web-dev-qa-db-fra.com

Wordpress - Afficher la catégorie parente ET le nom de la sous-catégorie dans l'URL de l'archive de la sous-catégorie

J'ai des problèmes avec les URL d'archive Wordpress category/subcategory.

Par exemple, je veux pouvoir afficher cette archive:
http://faroutmagazine.co.uk/wp/track-of-the-day tout en conservant sa catégorie parente dans l'URL, ce qui en fait un http://faroutmagazine.co.uk/wp/music/track-of-the-day

Auparavant, je recevais simplement un message 404 "Ceci est gênant ..." lors de l'accès à l'URL /music/track-of-the-day (même s'il s'agissait de celle qui apparaissait dans l'option Affichage sous catégories dans la section admin de WP).

Maintenant, le lien Afficher dans la zone d'administration ne m'indique que l'URL /track-of-the-day, et cela affiche les messages de la catégorie, ce qui est excellent, mais je souhaite qu'il inclue la catégorie parente dans l'URL.

Y a-t-il quelque chose que je puisse faire pour le fichier functions.php ou les plugins que je peux ajouter pour que cela se produise? N'oubliez pas qu'il existe plusieurs archives de sous-catégories sur ce site et qu'elles doivent toutes contenir la catégorie parente dans l'URL.

*** UPDATE: En fait, je viens de tout configurer différemment en utilisant Pages et en affichant les archives de catégories sur les pages, car cela prend trop de temps. Merci pour votre réponse si. Les personnes qui me disent d'utiliser %category%/%postname% comme structure permalien sont incorrectes - oui, cela fonctionne pour les URL POST mais pas pour la catégorie archive de la sous-catégorie, qui est le problème pour lequel je cherchais réellement de l'aide. Si quelqu'un peut fournir une réponse, ce serait apprécié, mais j'utilise cette solution de contournement maintenant, car cela prenait trop de temps à essayer de comprendre.

10
rossautomatica

Cela est dû au fait que vous avez choisi la catégorie et la sous-catégorie parmi les options appropriées lorsque vous modifiez l'entrée. Choisissez uniquement la zone de sous-catégorie dans chaque entrée et l'URL imbriquée s'affichera. 

18
Peter

Pour que cela se produise, vous devez modifier quelque peu les permaliens.

allez dans Paramètres-> Permaliens puis sélectionnez structure personnalisée et utilisez cette syntaxe " /% catégorie% /% postname%/" dans le champ

Maintenant, enregistrez les paramètres et vous pouvez voir l'URL de publication en utilisant son nom de catégorie dans le permalien

J'espère que ça aide :)

5
Maruti Mohanty

En fait, les permaliens des archives de sous-catégories hiérarchiques sont par défaut dans WordPress.

Si vous avez une structure "jolis permaliens" sélectionnée dans paramètres> permaliens, telle que /%postname% par exemple, les URL des archives de catégorie et de sous-catégorie doivent par défaut être quelque chose comme: yourdomain.com/category-base/category/sub-category/sub-sub-category

J'avais rencontré un problème similaire avec un projet récent WP, MAIS j'utilisais un plugin appelé WP No Base Permalink afin de supprimer mes slug de catégorie et de base de balises dans mes archives. permaliens. Lorsque j'ai désactivé le plugin, la hiérarchie des catégories est revenue subitement à mes archives permanentes (heureusement, ce projet était encore en développement, sinon j'aurais eu 404 problèmes majeurs).

Je n'ai pas encore trouvé/testé un autre plug-in pour éliminer les slugs de base de catégories/balises qui préservent également la hiérarchie dans les URL des archives de sous/catégories, mais il s'avère que je n'ai pas besoin de cette fonctionnalité pour mon projet actuel.

Au lieu de cela, j'utilise les slugs de base blog-articles et blog-tags pour les catégories et les balises standard afin de différencier les taxonomies de blogs des autres taxonomies. J'utilise ensuite le plugin Types pour créer un type de publication personnalisé et des taxonomies personnalisées pour ce type de publication. Le plug-in Types a une option dans les paramètres avancés permettant de définir les URL de taxonomie hiérarchique sur true ou false lors de la création d'une taxonomie personnalisée.

Enfin, j'ai trouvé un plugin appelé Remove Taxonomy Base Slug qui élimine efficacement le terme de taxonomie par défaut du slug de base des URL des archives de taxonomie. Et cela, heureusement, n’interfère pas avec les URL hiérarchiques des sous/catégories, OR les slugs de base des balises et des catégories standard.

Alors maintenant, les catégories/tags de mon blog ressemblent à ceci:

yourdomain.com/blog-articles/category/sub-category/ ou yourdomain.com/blog-tags/tag/

Et mes catégories/tags de type de message personnalisé ressemblent à ceci:

yourdomain.com/category/sub-category/ ou yourdomain.com/tag/

Phew!

J'espère que ça aide!

3
user2655393

Paramétrer Paramètres-> Permaliens-> Catégorie de la base sur '% category%' devrait vous donner ce que vous voulez Selon WP doc:

Les sous-catégories imbriquées apparaissent comme des répertoires imbriqués dans l'URI

Voir http://codex.wordpress.org/Using_Permalinks .

2
gwc

Les paramètres de liens permanents doivent être comme /% category% /% postname%/..

1
Shiva

Si vous utilisez uniquement les paramètres de permaliens personnalisés en tant que% postname%, votre URL sera sous la forme suivante ... 

0
Desh

Vous pouvez utiliser le plugin WordPress pour supprimer "category" de l'URL http://wordpress.org/plugins/wp-no-category-base/ puis suivez les instructions données par Maruti

0
Manish