Come rimuovere l'archivio di un custom post type

10 ott 2013, 13:40:58
Visualizzazioni: 31.2K
Voti: 20

Ho un custom post type chiamato "recipe" con il parametro has_archive impostato su true. Visitando mysite.com/recipe/ viene mostrato un elenco base di tutte le ricette pubblicate con il titolo della pagina "Recipes". Fin qui tutto bene.

Ora sto cercando di disabilitare quella pagina di archivio delle ricette (mantenendo funzionanti i link delle singole ricette). Il mio primo pensiero è stato provare a impostare has_archive su false, che sembrava dovesse funzionare. Ma no. L'unica differenza che fa è nel titolo della pagina che per qualche motivo diventa il nome del sito. L'archivio effettivo viene ancora visualizzato.

Qual è il modo migliore per rimuovere completamente quell'archivio? Esiste un parametro di register_post_type che permetta di ottenere questo risultato oppure è impossibile e si deve ricorrere a un template di pagina personalizzato con un reindirizzamento?

Grazie.

2
Commenti

Hai eseguito il flush delle regole di rewrite dopo aver impostato 'has_archive' => false?

Chip Bennett Chip Bennett
10 ott 2013 14:53:50

Ottimo punto @ChipBennett, non l'avevo fatto! Ora funziona come previsto, grazie :)

Shellbot Shellbot
10 ott 2013 15:07:02
Tutte le risposte alla domanda 1
4
38

Il parametro has_archive per register_post_type() fa esattamente quello che ti aspetti che faccia. Tuttavia, modifica le regole di riscrittura quando viene impostato. Quindi, se lo imposti su false, dovrai ripulire le regole di riscrittura affinché la visualizzazione dell'indice dell'archivio venga rimossa completamente.

10 ott 2013 15:13:08
Commenti

Nota: questa operazione va fatta solo una volta. Un modo semplice per farlo è, ad esempio, visitare Impostazioni->Permalink e ri-salvare le impostazioni correnti. Questo farà il flush delle regole di riscrittura.

nico nico
29 ago 2015 17:43:34

Tieni presente che questo non disabilita effettivamente gli archivi; disabilita solo l'URL pulito per accedervi (mysite.com/recipe/ in questo esempio). L'archivio esiste ancora ed è raggiungibile all'indirizzo mysite.com/?post_type=recipe fintanto che il post type è pubblicamente interrogabile.

Mark Mark
4 mag 2016 22:34:43

come si fa il flush delle regole di riscrittura?

djack109 djack109
28 mag 2020 04:38:14

@djack109 - È letteralmente scritto 2 commenti sopra il tuo...

floodlitworld floodlitworld
9 mar 2023 08:29:15