Como remover o arquivo do tipo de postagem personalizado


17

Eu tenho um tipo de postagem personalizado chamado "receita" com o has_archiveparâmetro definido como true. Visitar mysite.com/recipe/ fornece uma lista básica de arquivos de todas as receitas postadas e o título da página "Receitas". Por enquanto, tudo bem.

Agora, estou procurando desativar a página de arquivo de receita (mas manter os links de receita individuais funcionando). Meu primeiro pensamento foi tentar definir has_archivefalse, o que parece fazer o truque. Não. A única diferença que isso faz é o título da página, que por algum motivo se torna o nome do site. O arquivo real ainda é exibido.

Qual é a melhor maneira de remover esse arquivo completamente? Existe um parâmetro register_post_typeque atinja isso ou é impossível e o caso de um modelo de página personalizado com um redirecionamento?

Obrigado.


11
Você liberou suas regras de reescrita após a configuração 'has_archive' => false?
Chip Bennett

Bom ponto @ChipBennett, não! Funciona como esperado agora, graças :)
Shellbot

Respostas:


29

O has_archiveparâmetro para register_post_type()faz exatamente o que você espera que ele faça. No entanto, modifica as regras de reescrita quando definidas. Portanto, se você mudar para false, precisará liberar suas regras de reescrita para que a exibição do índice de arquivamento seja totalmente removida.


Nota: isso só precisa ser feito uma vez. Uma maneira fácil de fazer isso é, por exemplo, visitar Configurações-> Links permanentes e salvar novamente as configurações atuais. Isso liberará as regras de reescrita.
Nico

3
Observe que isso realmente não desabilita os arquivos; desativa apenas o URL bonito para acessá-los ( mysite.com/recipe/neste exemplo). O arquivo ainda existe e é acessível mysite.com/?post_type=recipedesde que o tipo de postagem seja publicamente consultável.
Mark
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.