J'ai un type de message personnalisé appelé "recette" avec le has_archive
paramètre défini sur true. Visiter mysite.com/recipe/ donne une liste d'archives de base de toutes les recettes publiées et un titre de page de "Recettes". Jusqu'ici tout va bien.
Maintenant, je cherche à désactiver cette page d'archive de recette (mais garder les liens de recette individuels qui fonctionnent). Ma première pensée a été d'essayer de définir has_archive
false, ce qui semble faire l'affaire. Nan. La seule différence que cela fait est le titre de la page qui, pour une raison quelconque, devient le nom du site. L'archive réelle est toujours affichée.
Quelle est la meilleure façon de supprimer complètement cette archive? Existe-t-il un paramètre register_post_type
permettant d'atteindre cet objectif ou est-ce impossible et un cas d'un modèle de page personnalisé avec une redirection?
Merci.
'has_archive' => false
?Réponses:
Le
has_archive
paramètre pourregister_post_type()
fait exactement ce que vous attendez de lui. Cependant, il modifie les règles de réécriture lorsqu'il est défini. Donc, si vous le changez enfalse
, vous devrez vider vos règles de réécriture pour que l'affichage de l'index d'archive soit entièrement supprimé.la source
mysite.com/recipe/
dans cet exemple). L'archive existe toujours et est accessiblemysite.com/?post_type=recipe
tant que le type de publication est publiquement interrogeable.