Des rewrite rules pour optimiser le référencement de vos URL avec Wordpress, Dotclear et Movable Type

ApacheLa majorité des outils de blog modernes viennent avec un système de permaliens soi-disant optimisés pour les moteurs de recherche permettant de retrouver un contenu dans une URL de manière relativement explicite.

À un schéma d’URL du type http://monsite.com/index.php?p=42 s’est substitué un schéma désormais plus classique du genre http://monsite.com/articles/année/mois/jour/titre-du-billet nettement plus explicite, aussi bien pour les lecteurs que pour les outils de recherche.

Pourtant, les URL par défaut ne sont pas toujours ni optimisées pour les moteurs de recherche, ni pour l’usage que l’on fait de son outil de publication. À moins de tenir un journal dans lequel la chronologie joue un rôle important, des URL du type /titre-du-billet seront beaucoup plus pertinentes, tout en étant plus optimisées pour les moteurs de recherche.

La majorité des blogware modernes à héberger soi-même disposent d’un système permettant de choisir son format d’URL. Si vous n’avez pas réfléchi au problème avant d’ouvrir votre blog, il vous faudra, une fois mis en place ce nouveau format, rediriger vos visiteurs des anciennes URL vers les nouvelles. Cela vous évitera non seulement pléthore d’erreurs 404, mais surtout, par là même, de perdre tout le bonus des liens pointant vers vos articles.

Je vous propose, afin d’éviter cela, quelques règles de réécriture Apache à destination des trois principaux outils de blog : Wordpress, Dotclear et Movable Type, dans leur schémas d’URL de base.

Les nouveaux schémas d’URL à mettre en place sur vos blogs sont :

  • Billets : /titre-du-billet
  • Catégorie : /categorie/titre-de-la-categorie
  • Tags : /tag/nom-du-tag

Des adaptations pourront être nécessaires ici et là.

Wordpress

Sous Wordpress, vous allez :

  • Supprimer le préfixe /articles.
  • Réécrire les URL des billets en supprimant le préfixe le timestamp.
RewriteRule ^/articles/(.*) /$1
RewriteRule ^/\d{4}/(?:0?[1-9]|1[012])/(?:0[1-9]|[12]\d|3[01])/(.*) /$1 [R=301,L]

Dotclear

Sous Dotclear, vous allez :

  • Supprimer l’omniprésent index.php (merci JS pour les indications sur le fonctionnement de Dotclear).
  • Supprimer le préfixe /post/ sur les billets.
RewriteRule ^/index.php/post/\d{4}/(?:0?[1-9]|1[012])/(?:0[1-9]|[12]\d|3[01])/(.*) /$1 [R=301]
RewriteRule ^(page|archive|feed|tag|category|sitemap\.xml)/(.*)$ /index.php/$1/$2 [L]
RewriteRule ^(archive|tags|sitemap\.xml) /index.php/$1 [L]
RewriteRule ^/(.*)$ /index.php/post/$1 [L]

Movable Type

Movable Type est ainsi fait qu’on ne pourra agir que sur les URL des billets, ce qui est déjà pas mal. N’ayant pas de Movable Type sous la main, je n’ai d’ailleurs pas pu vérifier que cela était possible. Cette réécriture est donc purement empirique.

RewriteRule ^/archives/\d{4}/(?:0?[1-9]|1[012])/(.*) /$1 [R=301,L]

Et voilà, that’s all folks comme on dit dans les cartoon de mon enfance. J’espère que ça vous aura été utile.

The evil butterly girl

Publié le 29 juillet 2008 à 14h55 Publié sous et Labels blogging, référencement, search, google, seo

À propos

Frédéric de Villamil

Je m'appelle Frédéric de Villamil, et quand je ne déploie pas ma mauvaise humeur et ma mauvaise foi sur le Web, je suis un super héros chargé de sauver le monde. Vous pouvez me suivre sur Twitter.

  1. Jean-Sébastien Mansart le 29 juillet 2008 à 15h08

    Même si c’est une bonne méthode, le mieux est de réfléchir avant au format des URL, car comme tout le monde le sait : Cool URL don’t change ;) http://www.w3.org/Provider/Style/URI

  2. Luc le 29 juillet 2008 à 16h12

    à : Billets : /titre-du-billet

    je préfère : Billets : /id-du-billet-titre-du-billet

    Qui permet d’avoir plusieurs articles ayant le même titres.

    Utile dans le cas d’articles au thème récurrent du genre : “les liens du jours” ou “les photos du week end”

  3. Frédéric de Villamil le 29 juillet 2008 à 16h25

    @JS : quand on commence à publier, on ne se pose généralement pas ce genre de questions, elles arrivent après. Et c’est justement ce genre de rewrite qui permet de garder la permanence des rewrite rules.

    @Luc : à ma connaissance, Wordpress (entre autres) ajoute déjà l’ID à la fin des permaliens justement pour permettre ce genre de choses.

  4. Thomas le 29 juillet 2008 à 16h27

    Je suis d’accord avec Luc, d’ailleurs c’est comme ça que je fonctionne depuis le début !

    Pour DotClear je préciserais que ton billet ne concerne que la version 2.

  5. Olivier le 29 juillet 2008 à 20h27

    Merci pour les redirections DC2, ça pourra servir. A voir à termes si pour le SEO c’est efficace.

    Très sympa ta photo.

  6. Luc le 29 juillet 2008 à 20h34

    @Frédéric : Nope du tout,

    La version par défaut de wp c’est : /?p=id

    ensuite la version rewrité par défaut se base sur la date + titre de l’article

    mais pas de notion d’ID unique.

  7. sebastien le 08 mars 2009 à 13h19

    Merci pour cet article, mais dans wordpress, on a systématiquement des url de catégorie du type http://www.monsite.com/category/informatique/ au lieu, simplement, http://www.monsite.com/informatique/

    Dans l’admin on peut remplacer category par un autre mot mais on ne peut pas l’enlever.

    Comment faire pour zapper ce “category” ?

Réagir à Des rewrite rules pour optimiser le référencement de vos URL avec Wordpress, Dotclear et Movable Type

Afin de maintenir le niveau global de ce site, les commentaires font l'objet d'une politique de modération qualitative basée sur des critères non écrits et totalement subjectifs, donc injustes.

Les commentaires écrits en langage SMS, inutiles, déplacés, injurieux ou relevant du spam seront systématiquement supprimés sans avertissement préalable.

Les trackbacks sont fermés pour cause de spam.