Supprimer le préfixe “category” des structures URL des catégories
L’astuce suivante permet de supprimer le préfixe “category” des URL de vos catégories. Ce préfixe est automatiquement ajouté par WordPress.
Si vous avez modifié la structure des permaliens de WordPress, les adresses URL de vos catégories sont de ce type : http://mon-site.com/category/slug-de-votre-categorie.
Comment faire si vous souhaitez mettre en place des urls “http://mon-site.com/slug-de-votre-categorie” sans le “category” ?
A partir de l’administration, dans le menu “Réglages” puis “Permaliens”, WordPress permet de modifier le préfixe avec le champ “Préfixe des catégories”. Il est ainsi possible de remplacer “category” par n’importe quel mot.
Par exemple, si vous inscrivez la lettre “c” et que vous sauvegardez vos modifications, la structure URL des catégories sera “http://mon-site.com/c/slug-de-votre-categorie”. Malheureusement, ce n’est pas encore le résultat escompté !
L’astuce pour supprimer définitivement le préfixe est de mettre “.” dans le champ “Préfixe des catégories” (voir l’image ci-dessous).
Avec cette configuration, la structure URL de vos catégories sera “http://mon-site.com/slug-de-votre-categorie” et le référencement naturel sera plus optimal.
69 Commentaires
Intéressant. Merci pour l’astuce.
Excellente astuce !!!
Merci :)
Excellente astuce, merci beaucoup. Je suppose que la même astuce peut être utilisée pour les mots-clef ?
Je n’ai pas testé, mais je suppose que oui.
Cependant, attention à ne pas avoir un tag qui soit aussi une catégorie, il y aurait un conflit !
Si on a déjà écrit des articles et qu’on a attribué des catégories, l’application de l’astuce fait que wordpress ne semble pas retrouver les articles.
En fait, l’astuce marche bien.
Mais avec mon thème qui affiche les catégories en bas de l’article, il semble que c’est incompatible…Il faut que je creuse le code de mon thème pour pouvoir appliquer l’astuce…
Peux-tu mettre le lien de ton site stp ?
Les liens vers les catégories sont-ils en dur ou pas ?
Parce que normalement, WordPress modifie le lien tout seul.
Et si tu mets ce plugin => http://wordpress.org/extend/plugins/wp-no-category-base/
Supprime le “.” dans l’administration si tu mets le plugin ;)
J’ai le même problème, wordpress ne retrouve pas mes pages de catégories hélas. Que signifie “liens en dur” ? le lien est modifié tout seul en effet, mais renvoie vers “la page que vous cherchez n’existe pas”
Un lien du site pour que je puisse voir le problème ?
c’est génant le site est en construction, je peux envoyer le lien par mail ou MP ?
Pas de problème :)
Envoyez moi le lien à l’adresse mail suivante : contact[at]geekpress.fr
merci, je viens d’envoyer un mail à cette adresse
Salut !
Sympa l’astuce, très sympa le site en général. Le préfixe catégorie disparaît bien. J’ai tout de même un souci. Ce nouveau permalien me renvoie une erreur 404… Rien de trouvé etc…
Penses-tu que cela puisse venir du problème soulevé à la fin de ce post (#Permalink Conflicts) :
http://shibashake.com/wordpress-theme/custom-post-type-permalinks-part-2 ??
Un souci assez barbant d’ailleurs qui pose pas mal de souci pour avoir des URLs bien claires…
Merci !
Ouah ! J’ai trouvé une étrange(?) solution à mon problème en modifiant la structure personnalisée de mes permaliens et en appliquant ton astuce :
/%category%/%category%/%postname%/
J’ai en effet 2 niveaux de hiérarchie dans mes catégories…
Si quelqu’un a un explication sur si phénomène je veux bien :)
En tout cas c’est une solution.. A voir comment ça se comporte avec des + de hiérarchie ou l’utilisation des taxonomies par exemple.
En effet, j’ai moi même une structure de permalien identique => /%category%/%category%/%postname%-%post_id%/
A voir avec des catégories à un seul niveau et un custom post type.
J’aurai l’occasion de tester ça sous peu :)
Entre temps il reste toujours la solution via plugin => http://wordpress.org/extend/plugins/wp-no-category-base/
Yes ! Je te confirme qu’avec un seul niveau de hierarchie cela fonctionne. J’ai des pages d’archive à tous les niveaux. Même chose je testerai bientôt sur un site avec plusieurs post-type et taxonomie, je ferai un retour. En tout cas merci pour ça c’est nickel !
Parfait !
En effet, n’hésite pas à faire un retour avec l’utilisation d’un custom post type :)
oui mais il n’y a pas de redirection 301 de l’ancienne URL vers la nouvelle donc ça sert à rien à part si on part de 0
hello, j’ai un probleme sur les sous categories avec cette technique. que dois je faire ?
merci
@Pascal, ça donne quel genre d’url pour les sous-catégories ?
en fait les sous categories ne s’affichent qu’en lien direct :
http://www.monsite.com/sous-cat1 alors que WP appelle l’ancien modele http://www.monsite.com/cat1/sous-cat1
j’ai installé le plugin et ça marche nickel
Salut,
J’ai testé l’astuce et cela fonctionne bien avec un WP classique, cependant avec un WPMU cela pose le problème de l’erreur 404 que certains semblent aussi avoir rencontré.
Bon j’ai pas encore testé le plugin indiqué dans les commentaires, j’en ai déjà pas mal d’actifs et j’ai pas envie de surcharger la bête…
En tout cas merci pour ces infos.
Marche très bien pour du WordPress classique, mais je confirme que pour du multisites ça pose problème, j’ai été obliger de passer par des redirections dans le .htaccess …
Ayant aussi connu quelques problèmes, je confirme ce qui à déjà été écrit, l’utilisation de : WP No Category Base – WPML compatible règle le problème et ne demande aucun réglage
Merci pour l’astuce qui permet de se passer d’un plugin
J’ai pu virer WP no category avec lequel j’avais un incompatibilité.
Excellent, merci !
Au fait, ça me pose problème pour la pagination des catégorie. WP ne trouve pas les pages 2 et suivantes. Comment faire ?
Je m’y connais pas assez pour te répondre. :s
Tout d’abord, est-ce que la loop a bien été configurée avec le “paged” pour récupérer le numéro de la page courante ?
Merci beaucoup pour l’astuce ! :)
Merci pour l’astuce, c’est exactement ce dont j’avais besoin.
un grand merci ;) c’est tu comment on peu ajouter un .html a la fin du nom de nos commentaire car le permalien ne me le fait que pour mes articles :s merci :)
@Macko : Les commentaires sont présents dans un article, je ne comprends pas la demande :/
en faite dans l’url quand je vais sur http://www.monsite.com/nom_category je voudrais ajouter le .html a la fin
j’ai bien utilisé l’astuce de mettre le “.” dans “category” avec une structure de permalien => /%category%/%category%/%postname%.
Mes urls sont donc “propres” pour les catégories sauf que pour les posts, ils se trouvent dans des urls du type monsite/category/sous-catégorie/categorie/sous-categorie/post.
Quelqu’un à une solution pour avoir mes posts avec une url sans redondance de la catégorie et sous catégorie ?
@laurent pourquoi %category% x 2?
c’est pour garder le même url que mon vieux site, mais sur wordpress quand je mets un rewrireparmanant dans mon htaccess, wp ne l’accepte pas et me renvoi le htaccess d’origine. wp_rewrite est pas encore a mon level :s donc si tu sais pk wp refuse mon htaccess tu m’évite une nuit blanche :p
@Laurent : le prefix des catégories n’a rien à voir avec le permalien d’article ;)
/%postname% suffira pour mettre uniquement le slug de l’article.
@Macko : pour ajouter un .html, ça devient un peu plus compliqué ^^ Mais pourquoi vouloir ajouter .html ? L’extension du fichier dans une adresse url n’est pas obligatoire.
merci pour ces retours.
je ne me suis peut etre pas fait comprendre : j’ai en effet 2 niveaux de hiérarchie pour mes catégories et je souhaite supprimer le préfixe de la catégorie. J’ai donc utiliser l’astuce de @Erasmussen qui fonctionne bien pour ce type de structure et me fournit des urls “propres” pour mes catégories et sous catégories Cela implique donc que j’ai modifié le prefixe des catégories (=”.”) et le permalien (/%category%/%category%/%postname%). Mais cela me pose le problème pour les urls des articles comme expliqué dans mon précédent post.
@Macko : Dans le fichier .htaccess, il ne faut rien insérer entre # BEGIN WORDPRESS et END WORDPRESS, sinon ça sera effectivement écrasé ;)
@Laurent : il faut mettre que %postname% ;)
Merci Jonathan, ça ma résolu bcp de problème, reste à supprimer le ‘category’ des sitemaps et tout va bien pour moi.
punaize je suis tombé sur ton article en cherchant justement à supprimer le category de mon url de l’un de mes blog. Nikel ça marche super !! Merci à toi ô Geekpress tu gères !!
@Belkawired : Merci du compliment =D
Merci pour cette astuce ô combien utile ! ça nous a évité d’installer des plugins de permalinks. Encore merci.
Ca marche bien pour enlever le /category/ des liens de mon wordpress mais quand on clique sur le lien, ca me fait une erreur 404. suis-je le seul ?
Bonjour NiC1305,
Parfois, il arrive que cette astuce ne fonctionne pas. Dans ce cas, je vous conseille d’utiliser le plugin suivant : http://wordpress.org/extend/plugins/wp-no-category-base/
Nickel avec l’extension ça marche parfaitement !! Merci
bonjour
merci beaucoup pour l’astuce, par contre les liens modifiés revois vers: votre page non trouvé :((
Ouch, comme pas mal de gens plus haut, j’ai eu un petit soucis d’erreur 404 généralisée sur toutes les catégories, avec des bugs bizarres (non affichage des titres par exemple). Ca a suffit pour me fair eune petit frayeur vu que je n’avais pas sauvegardé. Heureusement, ça revient ensuite, et le plugin que vous donnez WP no category base marche du tonnerre. Par contre, j’ai opté pour la version “WPML Compatible” du fait des commentaires laissés plus haut sur le possible lien entre le multi-site et ce bug 404.. Peut-être que je me trompe complètement.. alors, quelle est la réelle différence entre ces deux plugins ?
@ Epicture: Je ne connais pas du tout le plugin WPML Compatible. Donc je ne suis pas la bonne personne pour vous dire la différence et quel est le meilleur.
En fait, le nom entier du plugin est “WP no catgory base WPML Compatible”, donc il semble que ce soit plutot une variante qu’un plugin complètement différent. Ce n’est pas trop grave de toute façon, j’ai pu faire la même chose avec All in one SEO. Merci en tous cas pour la réponse!
Excellent ! Merci beaucoup pour cette astuce très pratique et ultra simple !
Merci super astuce. Par contre en l’utilisant je n’arrivais plus à rattacher mes articles aux catégories. Je suis donc allé plus loin dans les commentaires et vu qu’il existait un plugin. Ça fonctionne nickel. Merci
Un tricks de jedi wordpress !! des heures de lectures passionnantes, merci !!!
Bonjour !
Je l’ai teste mais toutes mes pages ont une erreur 404 quand je clique sur l’une des categories ! est-ce normal ! j’ai ajoute comme vous avez dit le . dans les permaliens mais impossible ‘avoir un affichage !
@sam: Si l’astuce ne fonctionne pas pour vous, vous pouvez toujours utilisez le plugin suivant qui fonctionnera à tout les coups => http://wordpress.org/extend/plugins/wp-no-category-base/
Bonjour Jonathan,
Merci pour l’astuce mais c’est vrai que le plugin fonctionne sans problème !
@+
Thanks Brother…ça march bien =D
Merci pour l’astuce ! Cela fonctionne à merveille :-)
L’astuce n’a pas marché pour moi non plus et j’ai voulu un plugin testé sur la dernière version donc j’ai pris Remove Category URL et il supprimer complètement le category.
Bonjour,
Merci beaucoup pour cette astuce, notre site est maintenant optimal. Un grand merci !! :D
Un grand merci pour l’astuce ! Tant qu’on y est. Tu connais pas un plugin qui permet de gérer les silos SEO correctement via du maillage interne dans le menu ?
Merci pour l’astuce du “.” dans les permaliens, je cherchais à enlever ce prefixe depuis 2 jours. C’est très bien expliqué et simple à comprendre !
bonjour,
J’ai fait la manipulation.
J’ai maintenant une erreur 404 dans la catégorie…
Savez vous d’ou cela vient ?
Merci
JL
Essaye de réenregistrer les permaliens pour mettre à jour la structure d’URL
La technique du point fonctionne si dans le champs « structure personnalisée » on met : /%category%/%postname%/
Bonjour moi ce que je cherche à supprimer c’est me mot “Catégorie” directement en apparence sur mon site
thème chooko lite.
Là il apparait en permanence je ne trouve pas cela très beau.
Est il possible de le faire disparaître j’ai essayé dans l’éditeur de thèmes dans function.php et Style mais cela ne part pas
Avez vous une astuce ou savez vous ou je peux trouver ces lignes de code pas pour les archives mais pour l’affichage du site en permanence.
Ca ca va dépendre de chaque thème malheureusement !
Une piste : utilise Loco Translate (le plugin) pour accéder à la traduction de ton thème, trouve “Catégorie” et remplace le par rien “”, ça pourrait marcher
L’article date de 2011, mais l’astuce est toujours valable. Merci ! Par contre, après réflexion, j’ai préféré le faire avec Yoast SEO, qui propose depuis ses nouvelles mises à jour je pense, cette possibilité de supprimer la category. Il faut aller à AVANCE, onglet PERMALIENS et activer le bouton supprimer à la ligne category. C’est tout ;-)
Sinon, il faut attendre une petite minute, pour que la modification soit prise en compte. Sinon, 404 !
Merci !