Permaliens de catégories dans WordPress et duplicate content
Regardant de façon détaillée les avertissements de Google Webmaster Tools pour un de mes blogs, je découvre des meta title et descriptions dupliquées pour une trentaine de pages. Il s’agissait en fait de pages de catégories, accessibles via deux urls :
-www.exemple.com/category/categoriemère/deuxièmecatégorie/lacatégorie
et
-www.exemple.com/category/lacatégorie
(category étant le préfixe standard des permaliens des catégories).
C’était très fâcheux.
En plus des titles et descriptions dupliquées, bien sûr le contenu l’était aussi.
Comme j’avais en tête de refaire le thème, j’ai un peu laissé tomber.
En m’y mettant hier, j’ai découvert la source de mon problème, WordPress lui même, qui ajoute obligatoirement la hiérarchie des catégories dans le permalien. Et pas moyen de modifier cela dans les options elle-mêmes.
Là ça commençait à fortement me déplaire.
Parce que, outre le duplicate content, cela voulait dire que je devais figer ma liste de catégories et sa hiérarchie, ou risquer les erreurs 404.
Ca me semble aberrant : ainsi le contenu de ce blog s’étoffe peu à peu, et je ne vais pas avoir autant de catégories maintenant que lorsqu’il aura mille ou deux mille articles.
De plus, il est tout à fait possible de créer une catégorie à la volée en écrivant un article, et dans ce cas elle est à la racine. Il suffit que je tarde un peu, pour n’importe quelle raison, à la réintégrer à sa juste place dans la hiérarchie, pour que Google ait déjà indexé sa page, et se retrouve donc en 404 au prochain crawl.
Enfin, c’est un générateur d’url à rallonge. Non seulement pour les catégories elle-mêmes, mais pour les articles aussi, si l’on utilise dans le permalien la catégorie, comme beaucoup de blogs le font. (Et là, une mulltiplication encore plus grande des 404 si vous changez la hiérarchie des permaliens).
A chaque problème sa solution : un plugin, Single Category Permalink, par Scott Reilly. Aussi tôt trouvé, aussitôt installé, il ne reste plus qu’à paramétrer dans le .htaccess les redirections 301 des anciennes url des catégories.
Oui :)
Après le fait d’avoir activé l’accès à la catégorie dans avoir la hiérarchie est lié uniquement à un petit plugin que j’avais fait pour ce site, donc “normalement”, le duplicate content a moins de risque d’apparaitre sur un blog normal.
Le problème de la longueur des permaliens et des risques de 404 en cas de changement dans la hiérarchie des catégories reste lui… partout !
C’est un défaut commun à tous les blogs, si je comprends bien, non ?
Bonjour !
on peut aussi bien pramétrer son wordpress dès le début, pour que les permaliens des articles ne reprennent pas la catégorie et mettre en place des redirections 301 à la mano quand on on fait des modifs/déplacement de catégories (ce qui n’est pas très fréquent, normalement)…
De manière générale, j’ai l’impression que dans la nouvelle version de WP 2.7, les redirections 301 sont paramétrées par défaut. Dernièrement, j’ai changé le permalien d’un de mes posts, et la redirection s’est faite toute seule ! :) Peut-être qu’il en va de même avec les catégories ? je n’ai pas testé.
Bonjour,
pour ce que j’ai pu testé, le fonctionnement est différent pour les catégories. Un nouveau permalien et l’ancienne url passe en 404.
Effectivement je recommande de ne pas inclure la catégorie dans les permaliens des articles. La gestion des catégories dépend du blog, et de son évolution, sur certains des miens, cela bouge beaucoup.
En ce qui concerne les articles du blog, deux options :
– soit vous changez la structure des permaliens, WordPress vous affichera l’article, mais vous verrez en haut dans le title “Nothing found for…” et la page renverra un statut 404 (erreur page inexistante) qui est une catastrophe d’un point de vue SEO
– soit vous changez le slug de l’article, et là l’ancienne url ne renvoie plus rien.
Pour l’explication du premier point, c’est assez simple.
L’élément essentiel de l’identification du post, c’est le %postname% qui est censé être unique.
Il suffit donc du postname (ou identifiant, ou slug) pour retrouver l’article dans la base, et en afficher le contenu.
L’url “incorrecte” par rapport au permalien, est néanmoins une possibilité. Le serveur Apache est configuré par défaut, quand il ne trouve pas une page, pour chercher si d’autres ont un nom très voisin (par exemple avec une extension différente), et afficher l’alternative (si elle est unique) ou proposer le choix, si il y a plusieurs options.
Donc ici, on affiche automatiquement.
Mais ce n’est pas l’url qui a été originellement demandée, et celle ci n’existe pas, d’où le 404.
Bonjour,
J’ai également un soucis de permaliens…Je m’explique.
Actuellement, mes URL sont de la forme:
“www.mydomain.com/%category%/%postname%/”
et jusqu’à présent ça ne me posait pas de problèmes, mais maintenant que je commence à avoir pas mal d’articles, en terme de navigation c’est loin d’être optimal. J’ai donc crée un bloc qui reprend plus ou moins mes derniers articles, en bas de pas page…très très moche, et pas super visible !
Je souhaiterais donc utiliser les catégories parent/child avec les dropdown menu pour une meilleure organisation des articles, ce qui va entrainer une modification de mes URL.
Après quelques tests (mise en place du dropdown menu), voici mes nouvelles URL, elles sont de la forme:
“wwww.mydomain.com/%subcategory%-%category%/%postname%/”
pourtant dans les options de permaliens, ce qui est défini comme %category% devient %sucategory%-%category% (j’espère être suffisamment clair).
Bon alors et cette question ?
Comment faire pour ne pas perdre le travail SEO déjà réalisé, à savoir ne pas intégrer %subcategory% dans l’URL ou faire des redirections 301 via .htaccess.
3 plugins ont attiré mon attention, je veux bien votre avis :) !!
– http://www.john-noone.com/2007/04/06/true-cat-rewrite/
Plutôt bancal d’après les commentaires (commentaires qui datent…)
–
Pas certain qu’il réponde à mes attentes…
– https://wordpress.org/plugins/multiple-category-selection-widget/
Merci pour votre aide!
Déjà je suis plutôt fondamentalement contre l’utilisation des catégories / sous catégories dans les urls, exactement à cause du type de problème que vous rencontrez : la stabilité des permaliens.
Et encore plus avec les sous catégories…. bien sûr chacun fonctionne à sa manière, mais l’organisation de mes catégories n’est pas fixe, je peux les scinder si il y a trop d’articles dans une seule, etc.
Basiquement, ce que vous voulez faire c’est quoi ? Afficher les derniers articles pour chaque catégorie et sous catégorie ?
Perso, je ferais d’abord une requête appelant tous les articles d’une catégorie donnée, et je les ordonnerais par sous catégorie. (via quesrystring) Ensuite, il suffit de tester à chaque article si la catégorie est la même que celle de l’article précédent, et si oui, d’introduire le titre, et de rajouter le formattage (ul, li, etc)
merci pour la réactivité…en effet, moi aussi je regrette ces URL et je ne sais pas trop comment m’en sortir pour retirer cette catégorie et cette sous-catégorie de mes URL…malheureusement, quand j’ai commencé il y a près d’un an dans le web je n’y connaissais rien, j’apprends de mes erreurs…et pour le coup j’aimerais retrouver des URL de ce type (je veux bien votre avis :))
http://www.mondomaine.com/%postname%/
Afin de rester plus libre et d’avoir la possibilité, comme vous le suggériez, de changer un article de catégorie sans que cela n’influe sur mes URL (et donc le référencement)
Il me semble que je dois :
1/ Modifier mes permaliens en :
http://www.mondomaine.com/%postname%/
2/ Faire une redirection 301 de mes anciennes URL http://www.mondomaine.com/%category%/%postname%/ vers http://www.mondomaine.com:%postname%/
J’ai bon ? :-/
Si vous avez le code ? je prends car j’avais essayé avec avec quelque chose comme Redirectpermanent….j’obtenais une erreur serveur?!
Merci par avance :)
RedirectMatch Permanent /([0-9a-zA-Z-])/([0-9a-zA-Z-]+)/ http://mondomaine/$2/
a priori ça devrait marcher (à mettre avant le # Begin wordpress)
Merci, je teste au plus vite !
RedirectMatch Permanent /([0-9a-zA-Z-])/([0-9a-zA-Z-]+)/ http://mondomaine/$2/
Histoire de comprendre ce que je fais, et si vous avez 2 min, à quoi correspondent toutes ces valeurs ?
RedirectMatch Permanent : ça c’est l’action pour la redirection
([0-9a-zA-Z-])/([0-9a-zA-Z-]+) : ??
http://mondomaine/$2/ : /$2/ –> c’est quoi ?
Et les www? à éviter ?
Et que pensez-vous en matière SEO, c’est bien la meilleure technique pour éviter les mauvaises surprises ?
Merci et à bientôt, je suis souvent vos commentaires sur WRI ;-)
Ce sont des regex ^^ autrement dit des expressions régulières, ça vous dit de prendre des types de caractères donnés entre d’autres types de caractères (en l’occurrence des nombres entre des /) et ça numérote les paquets dans l’ordre croissant dans la première chaine, pour les ressortir “à la demande” dans la deuxieme.
Et non les www ne sont pas à éviter, vous mettez votre ndd complet, comme vous l’utilisez.
Merci Marie Aude, je me permettrais de vous tenir informé, surtout si ça marche !!
Volontiers (ahem… je me suis permis de corriger mon prénom ^^)
:)) Ah là vous me rendez heureux Marie-Aude (désolé d’avoir écorché votre prénom)…ça a l’air de fonctionner correctement, les redirections opèrent parfaitement, grâce aux regex ;-)
–> Une bizarrerie à élucider qui n’apparaît pas sur mon pc mais sur mon ordinateur portable :
evasioncoquine.com/la-prostitution-et-les-maisons-closes/ sur mon PC (donc de la forme souhaitée) et evasioncoquine.com/dossier-sexy/la-prostitution-et-les-maisons-closes/ sur le portable ?!
J’ai testé près de 30 articles, pas de problème…
J’attends quelques jours pour voir le résultat dans GWT et je si pas de problèmes particuliers, je pourrais mettre en place mes dropdown menus.
Encore merci pour votre réactivité et votre soutien, dans cette épreuve pas simple pour un novice !
Pour être bien sûr, et après j’arrête !
– ces redirections sont bien les plus efficaces/ adaptées ?
– si cela ne fonctionne pas correctement,je verrai apparaître des 404 dans GWT ?
– je peux donc changer à ma guise les articles de catégories ? (cool, certains n’ont rien à faire là !)
Merci
Bonjour Marie-Aude,
Voici le bilan : ça fonctionne en apparence mais GWT en a décidé autrement.
Mes URL ont toutes été désindexées, mais reviennent petit à petit.
Pour que tout soit clair : (ex)
catégorie : culture
sous catégorie : cinéma
sous catégorie : mode
Les articles qui se trouvent dans les sous catégories sont également accessibles via la catégorie (où l’on retrouve par dates tous les articles)
On obtient alors une même page accessible via 2 URL, d’où le mécontentement de Google qui m’annonce :
meta description et title en doublons sur l’ensemble de mes articles.
Pourtant tous mes articles ne sont accessibles que via http://www.mondomaine/%postname%/ et sont listés dans :
http://www.mondomaine/%category%/
Certains articles se trouvent également dans 2 sous catégories, mais dans ce cas là ça ne pose pas de problème car on reste avec la forme : http://www.mondomaine/%postname%/
Je ne vois donc pas pourquoi tous mes titres sont dupliqués ainsi que mes descriptions ?
Si vous avez une piste, merci pour vos retours !
Tout simplement parce que Google met du temps à “désindexer” les redirections. Vous pouvez supprimer les urls avec l’outils GWT (en travaillant par répertoire)
Merci, je vais supprimer mes urls et patienter :(