La pagina archivio per il custom post type non funziona

22 mag 2013, 15:32:36
Visualizzazioni: 24K
Voti: 1

Utilizzo un plugin chiamato CPT-onomies per creare Custom Post Type. Ho creato un post type chiamato "case" e ho impostato "Has Archive Page" su true, ma quando provo a visualizzare un singolo case, ottengo solo un errore 404. La stessa cosa accade anche se provo a visualizzare l'archivio effettivo, ad esempio "site.com/case" e non "site.com/case/case-item".

Ecco uno screenshot delle mie impostazioni: https://i.sstatic.net/VOoB1.png

Ho provato a disabilitare/abilitare il plugin, senza successo. Ho anche provato a cambiare la struttura dei permalink dell'intero sito (da impostazioni -> permalink) perché a volte non si aggiorna.

Ho tralasciato qualcosa nelle impostazioni o è un bug del plugin? Ho rivisto tutto più volte e non riesco a trovare nulla che possa impedirne il funzionamento.

Ho un file template chiamato single.php che dovrebbe essere utilizzato. Ho provato anche con single-case.php ma non ha fatto alcuna differenza.

Soluzione

Ho trovato una soluzione qui: http://gabrieleromanato.name/wordpress-fix-the-404-error-on-custom-post-types/

15
Commenti

Ho avuto questo problema simile in precedenza ed è stato risolto http://wordpress.stackexchange.com/questions/99538/post-type-archive-page-not-working

markyeoj markyeoj
22 mag 2013 16:03:17

Ho provato a impostare manualmente il rewrite come suggerito, ma non ha funzionato comunque (ho aggiornato i permalink tra un tentativo e l'altro). Non dovrebbe nemmeno essere necessario perché il plugin ha le sue impostazioni predefinite. Hai guardato lo screenshot? Sono davvero a corto di idee...

qwerty qwerty
22 mag 2013 16:21:07

Ho controllato il tuo screenshot, prova a impostare hierarchical su true. Non ho familiarità con CPT-onomies, ma se non ti dispiace ti suggerirei di passare a custom-post-type-ui

markyeoj markyeoj
22 mag 2013 16:27:44

Ancora nessun risultato dopo aver impostato hierarchical a true. :/ Questa è la prima volta che uso il plugin, ho semplicemente preso uno dei più popolari. La prossima volta proverò sicuramente un altro, ma temo di essere bloccato con questo per ora (ho già aggiunto tantissimi contenuti, se rimuovo i post type posso dire addio anche ai contenuti).

qwerty qwerty
22 mag 2013 16:37:27

Se il tuo plugin fornisce il codice di registrazione del tuo post type, sarebbe meglio se lo includessi nel tuo post. e assicurati di avere i seguenti file:

archive-{post-type.php} - serve per visualizzare l'elenco dei post sotto il tuo custom post type

taxonomy-{taxonomy-name.php} serve per visualizzare l'elenco dei post che appartengono a un particolare taxonomy name

e single-{post-type.php} - per visualizzare un singolo post del tuo specifico custom post type.

markyeoj markyeoj
22 mag 2013 16:48:26

Il codice di registrazione è "trailers" (supponendo di averti capito correttamente - il "codice" è il nome che usi per riferirti al post type, giusto?). Non mi interessa l'archive in sé, ho solo bisogno di visualizzare i singoli post (collego al post da un'altra parte), e ho effettivamente disponibile un template single-trailers.php. Ho anche page.php a cui ricade, quindi questo non dovrebbe essere il problema.

qwerty qwerty
22 mag 2013 17:22:30

Personalmente eliminerei il plugin e registrerei il post type manualmente tramite register_post_type, è piuttosto semplice e rimuove il mistero di ciò che un plugin fa dietro le quinte. Se usi lo stesso nome per registrare il tuo post type, tutti i tuoi contenuti rimarranno accessibili, perché la rimozione di un post type registrato non tocca i dati nel database.

Milo Milo
22 mag 2013 17:26:40

In realtà ho il sospetto che rimuovere il post type eliminerà anche tutti i post al suo interno. Sta al plugin decidere, e se dovesse mantenere tutti i post finirebbe per ingombrare il database, giusto? Non lo so, farò un backup di tutto e proverò. Aggiornerò entro poche ore! Per la cronaca, in passato lo aggiungevo manualmente, ma ho deciso di cambiare e provare qualcosa di nuovo. È stata una pessima idea ~ "Don't fix it if it ain't broke".

qwerty qwerty
22 mag 2013 17:33:35

puoi guardare nel file uninstall.php del plugin, dubito che tocchi i post.

Milo Milo
22 mag 2013 17:54:36

Avevi proprio ragione! Continuerò a farlo manualmente, grazie!

qwerty qwerty
22 mag 2013 20:07:04

Sì, in realtà ho ancora problemi, l'archivio non viene visualizzato. Ecco gli argomenti che passo al post type: http://pastebin.com/raw.php?i=Q8su2E1z Vedi qualcosa di strano lì dentro?

qwerty qwerty
22 mag 2013 21:09:50

Hai altri contenuti nel tuo sito che potrebbero avere un URL in conflitto? Qualche pagina con uno slug/nome pagina 'case'?

Rachel Carden Rachel Carden
23 mag 2013 19:26:53

@RachelCarden Ti ho inviato una risposta su http://wordpress.org/support/...

qwerty qwerty
24 mag 2013 12:19:14

Dovresti pubblicare la tua soluzione come risposta e selezionarla come risposta corretta, così la tua domanda non rimarrà nella tomba delle domande senza risposta

Matthew Boynes Matthew Boynes
29 mag 2013 16:18:01

@MatthewBoynes Ottimo suggerimento. Fatto!

qwerty qwerty
29 mag 2013 17:37:42
Mostra i restanti 10 commenti
Tutte le risposte alla domanda 1
3

Ho trovato una soluzione qui: http://gabrieleromanato.name/wordpress-fix-the-404-error-on-custom-post-types/

Ecco cosa devi fare per farlo funzionare (citazione dal sito sopra):

  1. Vai su Impostazioni → Permalink e cambia la struttura corrente in: /%category%/%postname%
  2. Salva le modifiche.
  3. Ripristina le tue impostazioni originali dei permalink. Salva le modifiche.
29 mag 2013 17:37:25
Commenti

Anche a me questo trucco ha funzionato... strano ma vero.

Eric Eric
10 ago 2017 17:11:51

Ha funzionato anche per me. Uff dopo un'ora passata a cercare di capire perché non andava.

weston deboer weston deboer
3 feb 2019 23:45:06

Quella struttura era in realtà la mia struttura originale -_-

A. D'Alfonso A. D'Alfonso
26 mar 2021 19:03:02