Ma petite url, ou comment optimiser ses permaliens pour Google et vos lecteurs
Un bon url rewriting se fait par la gestion des permaliens dans WordPress. Pour aider à un bon référencement, celle ci doit répondre à quelques contraintes, sur la structure et la longueur des liens, et, chose qu’on oublie souvent, être compatible avec un fichier robots.txt qui empêche l’indexation des archives inutiles. Des urls courtes, bien construites, sont un plus pour les lecteurs et pour l’indexation.
Comme d’habitude, mes explications vont être basées sur WordPress, mais sont adaptables à n’importe quel blog, ou même à n’importe quel site utilisant l’url rewriting.
Les bases de l’url rewriting
L’url rewriting, en français ré-écriture d’url (non, incroyable ?) c’est le fait de transformer une url un peu absconse comme
www.example.com/index.php?p=347&t=24&l=de en www.example.com/deutschland/produkt.php
C’est une technique qui se gère côté serveur, avec le fichier .htaccess pour les serveurs Apache, et un truc similaire pour les serveurs Windows. Elle est apparue avec les sites dynamiques, donc notamment les CMS, qui utilisent cette technique pour savoir quel contenu doit être affiché dans la page.
Pourquoi ré-écrire ?
- parce que certains types de paramètres, les id de session (sessionid=blabla) ne sont pas reconnus par Google, et donc les pages pas indexées,
- parce que mettre en clair ses paramètres de gestion de page est faciliter la tâche aux hackers (quoique, lorsqu’on utilise un CMS connu, ces paramètres sont aussi connus),
- parce qu’une url avec des mots est plus facile à mémoriser par l’internaute lambda, elle est plus facile à identifier dans les SERP, bref elle est plus sexy,
- enfin parce que les référenceurs pensent qu’en chargeant une url avec 40 kilo de mots-clés, ils se positionneront mieux sur ce mot clé, ce qui est loin d’être vrai sans être totalement faux.
Le principe est simple, on va indiquer dans le fichier .htaccess des règles, qui vont lui permettre de faire le passage en l’url réelle, et l’url réécrite, avec quelque part dans votre blog un champ qui stocke le nom souhaité pour la page, dans WordPress, c’est pour les articles ou les pages, l’identifiant, ou slug, et pour les catégories ou les tags, l’identifiant ou nicename, ou encore slug.
Les permaliens dans WordPress
WordPress effectue, en standard, un certain nombre de ré-écritures, par exemple pour les adresses de flux rss, puisqu’en plus du flux standard, on peut avoir des flux par auteur [-www.monpetitblog/auteur/feed] ou par catégorie [-www.monpetitblog.com/dossiers/slug_de_la_categorie/feed].
De plus, même en gardant les urls à “paramètres” il est possible, dans les options générales, d’indiquer une url du blog qui soit différente du chemin. En clair, vous stockez votre blog dans un répertoire /monpetitblog, mais vous l’affichez dans un répertoire /encrelune.
Ca c’est pas mal côté sécurité, ça va rendre les choses un peu difficiles pour arriver à mettre la main sur vos fichiers de config.
Le permalien, permalink en anglais, c’est l’url complète d’une page, quelle qu’elle soit, qui va être construite à partir de l’adresse du blog, du slug (pardonnez cet anglicisme), et de règles de constructions qui sont personnalisables dans l’onglet “options -> permaliens” (incroyable, non ? bis…)
A ce moment là WordPress va créer un fichier .htaccess avec quelques règles, et ré-écrire vos urls.
Alors la bonne structure c’est quoi ?
Ce n’est certainement pas celle proposée par WordPress par défaut, et qu’on retrouve sur beaucoup de blogs.
En effet, si on applique la deuxième structure, un problème va se poser avec le fichier robots.txt.
Je recommande de ne pas indexer les archives calendaires, qui sont, sauf cas particulier, sans grand intérêt :
On peut utiliser le nofollow, mais le plus simple est d’interdire ces pages.
Là, la syntaxe va dépendre de votre structure de permaliens. Par rapport à la configuration standard :
Pour les archives calendaires :
Disallow: /20*
Ce qui a quand même le grand défaut de fortement ressembler à l’url d’un article standard quand on utilise la structure /%year%/%month%/%date%/%postname%
Ne soyons pas idiot, n’interdisons pas l’indexation de nos billets …
La solution ?
Construire soi-même une structure personnalisée.
En premier l’identifiant du post, ce slug, %postname%
Ensuite… ensuite, quelque chose quand même, car sauf si vous êtes un génie, au bout de trois ou quatre cent articles, vous pourrez avoir oublié que vous aviez déjà donné le même identifiant à un article.
Donc il faut rajouter “quelque chose” qui dépend de vous, éventuellement la date, mais pas sous la forme d’un sous répertoire, plutôt par exemple %year%%month%%date% (vous aurez quand même du mal à faire deux fois le même slug dans la même journée), ou tout simplement l’id du post, qui elle est unique, c’est la clé primaire de la base (%post_id%)
La structure pour les catégories et les tags
Moins souvent modifiée, vous pouvez choisir de remplacer les “sous répertoires” standard (category et tag) par des mots plus clairs, plus significatifs, genre dossier, idees, themes, ou ce qui vous plait… soyez créatifs !
De la doc sur les permaliens
En anglais, le codex de WordPress, Using Permalinks, qu’il faudra que nous traduisions un jour.
Et demain, en détail, le slug, et l‘intérêt d’un slug court pour des urls courtes !
Je découvre le blog et ça fait plaisir de trouver une référenceuSE de plus, j’y connais pas trop :D
En ce qui concerne la ré-ecriture sur wp, personnellement j’utilise cette méthode :
/%postname%/%post_id% mais je crois pas qu’elle est la meilleure, je préfère celle la : /%category%/%post_id%-%postname%.html que je trouve plus intéressante d’un coté pour le référencement, la gestion de son wp, faciliter la compréhension au visiteur lambda, bref, j’aime bien :)
Quel est le nombre limite de mot à inscrire vous croyez ?
Personnellement, dans le nom de fichier, je me limite à deux tirets maximum, limitation MSN Live. Et j’essaie de ne pas dépasser les deux niveaux de répertoires virtuels.
Bonjour,
Si on devait modifier les permaliens à la main, quel fichier il faudrait éditer ?
Merci d’avance
Bonjour,
Je voulais faire une url courte en utilisant juste %postname%-%post_id% mais WP déconseille la ré-écriture url qui ne commence pas par une donnnée numérique. Ceci pour des raisons de gestion bdd de sites importants.
Par ailleurs est-il important d’indiquer la catégorie dans l’url sachant que les catégories apparaissent normalement sur toutes les pages du blog ? Ce qui fait que le gain SEO me paraît assez faible.
Quel est votre avis ? Merci
@charlesen, il ne s’agit pas d’un fichier, mais des entrées de la base de données (table wp_posts)
@sofadesign, j’ai du mal à comprendre cet argument, car je ne vois pas ce que cela change. A moins de travailler uniquement avec l’id, il faudra de toute façons parcourir des champs alpha et des champs numériques, avec des possibilités de doublons.
Quant à la catégorie dans l’url, cet article est là pour conseiller des urls courtes, et personnellement je ne la mets pas.
Merci…
J’avais besoin de savoir, parce quà chaque fois que je selectionnais une autre option du permaliens, j’obtenais une erreur 500 et je n’avais plus accès à l’interface admin…mais c’est réglé, il suffit de supprimer le .htacces généré automatiquement….
Et ensuite, coe déjà dit plus haut pour les sites hébergés chez FREE, il faut commencer par “index.php” dans les permaliens personnalisés.
Merci votre aide à tous…
C’est parce que vous êtes chez free. Votre structure de permalien doit avoir une structure spécifique. Il y a un tuto pour ça sur le forum wordpress
Il faut savoir que robots.txt et notammant la fonction disallow ne semble pas agir comme vous le pensez sur google, il est possible si vous avez 2 noms de domaines , d’y placer exactement les mêmes sites, vous faites ensuite disallow /* sur le 2eme, et la miracle de la technologie des pandas, les 2 sites ne souffrent pas de duplicate content, et sont indéxés, vous pouvez donc référencer 2 domaines sans pénalité panda de contenu dupliqué !!! Incroyable mais vrai, mon concurrent est 1er et 2eme sur google avec cette ruse !!!