Corriger les défauts de base pour améliorer l’optimisation

Oui, WordPress est, à la base, plutôt bien conçu pour le référencement.

Non, WordPress n’est pas, en version standard, totalement optimisé. Et cela peut être empiré par des thèmes mal construits, ou par des erreurs dans l’organisation et la structure de son blog. (On ne parlera pas ici de la performance, qui est aussi un aspect important). Commençons par les défauts de base de WordPress.

Le titre du blog en H1 sur toutes les pages

C’est quelque chose qui a évolué avec le temps, mais tous les créateurs de thème n’ont pas suivi. Au début, dans les thèmes par défaut, et la majorité des thèmes, le titre du blog qui apparait dans le header était en H1, et donc toutes les pages du blog avaient un H1 identique.

Avec, ensuite, au choix selon la structure du thème, un deuxième H1 pour le titre de la page (et donc pas de texte entre les deux, deux « sections » totalement déséquilibrées) ou bien le titre de la page en H2. Dans ce cas, il fallait passer les titres internes de l’article en H3, ce qui leur faisait perdre beaucoup de poids.

Pour corriger cela, très simple. Il suffit de remplacer le h1 qui encadre le titre par

if ( is_home() or is_front_page() ) { echo '<h1' ; } else {echo '<div' }

sans rien changer d’autre (vous gardez notamment les classes et les ids, qui servent pour la mise en forme). Et bien entendu, ne pas oublier de corriger aussi la balise fermante !

La structure de permaliens avec les dates

Fortement recommandée par WordPress, mise en place sur wordpress.com, la structure de permalien incluant les années, mois et jour sous la forme aaaa/mm/jj est à mon avis à éviter à tout prix.

Notamment parce qu’elle rend impossible l’interdiction des archives par date dans le robots.txt

Or les archives par date sont, naturellement, en duplicate content avec l’index.

Sauf dans des cas exceptionnels, je ne vois vraiment pas l’intérêt de les utiliser.

L’archive « auteur »

De la même façon, dans un blog mono-auteur, l’archive d’auteur n’a aucun intérêt, et sera elle aussi en duplicate content par rapport à l’index.

Je la désactive le plus souvent possible, dans les meta, et j’ai deux petits fichiers, au contenu identique, qui s’appellent author.php et date.php et que je rajoute systématiquement dans mes dossiers de thème :

<?php // Permanent redirection header("HTTP/1.1 301 Moved Permanently"); header("Location : ".home_url()); exit(); ?>

Les titres dans la sidebar

Par défaut, cf le codex, la fonction register_sidebar génère un marquage html avec des titre h2 pour chaque widget. Il est même précisé

This is the convention we recommend for all themes

Je trouve cela très mauvais, étant donné la faible valeur du contenu en sidebar, peu de texte, beaucoup de liens, et du contenu répétitif sur toutes les pages.

Malheureusement, pour corriger cela proprement, c’est un peu difficile. Il faut faire un thème enfant, et selon les cas, surcharger la fonction de déclaration des sidebars, ou en refaire une autre.

Pourquoi ?

Les fonctions du thème enfant sont chargées avant celle du thème parent. Si le thème parent a été correctement développé, il teste à chaque fois l’existence d’une de ses propres fonctions, avant de l’appeler.

if ( !function_exists ('register_my_sidebar') ) { function register_my_sidebar() { register_sidebar (

etc…

Oui mais voilà, 99% des thèmes ne font pas ce test, en tout cas pas sur la fonction de déclaration des sidebars

Vous avez donc le choix entre :

  • corriger directement le thème (baaad et risqué si c’est un thème mis à jour)
  • faire dans votre thème enfant une fonction qui désenregistre la sidebar du thème et qui ensuite enregistre vos propres sidebars avec un marquage html correct. Lourd, mais « propre ».

On voit qu’on a commencé à parler des défauts des thèmes, qui seront le sujet du prochain article.

Parcourir la sérieProchain article

15 commentaires

  1. Nathalie Hamidi Auteur avril 8, 2013 (1:00 )

    Je suis 100% d’accord pour les permaliens. C’est une des choses qui m’ont dissuadée de passer certains de mes blogs sur WordPress.com — je ne veux pas de la date dans l’URL !

    Merci pour cet article ! Je vais jeter un petit coup d’oeil à mon thème. ^^

    Répondre à Nathalie Hamidi
  2. Je partage également ton avis. On a tendance à décrire WordPress comme le CMS « ultime » pour le SEO puisqu’il est « déjà optimisé » mais c’est loin d’être le cas. 

    J’ai tendance également, au minimum, à interdire aux robots les pages de tags, quand je ne désactive pas purement et simplement la fonctionnalité.

    Par contre les archives par date ont, à mon avis, une utilité dans le cadre de la navigation descendante : quand on a un fort volume d’articles, Googlebot (notamment) ne va pas très souvent visiter les pages profondes. Ca permet de laisser un peu de jus aux vieux articles.

    Répondre à Diije
  3. Merci pour cet article notamment pour l’archive auteur. Je n’y avais pas pensé de la supprimer, bon et bien j’ai un peu de boulot à faire ^^.

    Je vais de ce pas voir l’histoire des h2 dans les widgets, c’est ça de passer par un CMS, on regarde le thème :ok il est joli. Mais finalement qui regarde le code source ?

    Répondre à niou142
  4. WP est tout sauf optimisé d’origine. Il permet d’automatiser tout un tas de tâches mais il faut quand même mettre un peu les mains dedans.

    Répondre à Adam
  5. @ Nathalie si tu gères plusieurs blogs, as tu essayé le multi site avec domaine mapping ? 

    @ Diije il n’y a pas de dogme absolu, tout dépend de chaque site. Mais pour ce que tu recherches, je préfère les random posts, ou d’autres trucs. Y compris les liens internes in texte

    @ niou142 Qui regarde le code source ? Moi :D

    @ Adam ça serait bien d’expliquer un peu, ici c’est un blog où on essaye de parler technique, avec des arguments…

    Répondre à Marie-Aude
  6. Nathalie Hamidi Auteur avril 8, 2013 (4:54 )

    Oui mdame, mais j’aime pas trop. C’est pas encore aussi intuitif que WordPress pas MU.

    Répondre à Nathalie Hamidi
  7. Quand on parle SEO et indexation WP, ça me fait penser à ce gif dont le texte est : WordPress : 1 article publié, 3417 pages indexées dans Gooogle. » car par défaut, entre les tags, les médias, les taxonomies, les catégories, les archives, etc on se retrouve avec le moindre petit bout de fichier indexé. 

    Bonjour la pertinence ! 

    Cet article est plus que bienvenu, d’ailleurs je me posais la question pour les auteurs car je suis tombé sur quelques WP de SEO qui me renvoyaient vers l’accueil au lieu d’afficher la bio. Je sais désormais pourquoi, et comment faire ! Merci.

    Répondre à Yann
  8. Cédric Auteur avril 10, 2013 (4:53 )

    Encore une fois un article très intéressant sur l’optimisation WordPress et qui complète à merveille celui de Sylvain d’Axenet. La partie concernant l’archive auteur m’intéresse particulièrement mais j’ai encore du mal à comprendre exactement comment la désactiver. Je vais aller fouiller un peu.

    Répondre à Cédric
  9. Je suis bien d’accord pour le hn en sidebar, peu d’intérêt.
    En autre truc pénible c’est la pagination : ça donne parfois une tonne de pages avec le même title (‘page suivante’) – faudrait peut être que j’utilise wp-pagenavi…

    Répondre à Edo
  10. Christ Auteur mai 1, 2013 (5:11 )

    Merci pour tous ces conseils mais pour un néophyte comme moi
    c’est un peut tu charabia mais bon petit a petit je progresse grace a des gens comme vous.
    Merci

    Répondre à Christ
  11. Olabonga Auteur mai 9, 2013 (5:55 )

    Bonjour Marie-Aude,

    Pas compris pour les balises. Tu mets une h2 sur le titre du blog puis pour chacun des articles, tu passes le titre en h1 ?

    Peux-tu développer je te prie ? Merci.

    Olabonga

    Répondre à Olabonga
  12. Renaud RONGERE Auteur mai 12, 2013 (2:39 )

    Bonjour,

    Bien vu pour la desactivation et redirection des pages author et date sur un blog à un seul auteur. Je n’y avais pas pensé mais c’est plein de bon sens.

    Concernant les différentes balises h2-5 que le theme injecte dans les widgets ou dans la partie commentaire, navigation etc… est-ce qu’il ne vaut mieux pas les mettre en h6 ou bien en div et modifier le css avec ?

    Répondre à Renaud RONGERE
  13. Effectivement d’origine wordpress est plutot bien conçu pour le référencement mais pour augmenter les chances d’être visible il faut absolument l’optimiser pour le référencement sémantique. Personnellement j’attache une attention toute particulière à mes titres, descriptions et à la vitesse d’affichage de mes pages ( optimisation des templates et installation d’un systeme de mise en cache comme WP-Super-Cache).
    La fonction HeadSpace est importante et permet de personnaliser le lien « lisez-en plus » de vos billets, en remplaçant le lien par défaut afin d’un obtenir qui sera bien plus efficace pour votre référencement et attrayant pour vos lecteurs.
    La gestion des images peut apporter un petit plus grâce au moteur de recherche d’images en écrivant de bon tags ALT pour vos images.
    En appliquant ces petites choses on peut améliorer de manière visible son référencement.

    Répondre à Didier
  14. Je viens d’appliquer toutes les règles. Mon thème GraphPress était un peu bordélique mais avec un peu de temps on peut appliquer ces règles.
    On verra dans le temps si c’est possitif ou non.
    Le plus grand impact sera les les H1 je pense qui maintenant sont différents pour chaque billet et chaque page au lieu du nom du site.

    Côté sidebar, j’ai gardé un h2 pour une section ayant du contenu propre à chaque billet !

    Répondre à Arnaud

Commenter

*Informations requises Merci de donner les informations requises

  • Pas de liens raccourcis
  • L'auteur doit s'identifier avec son pseudo, son nom, son prénom ou s'il le veut le nom de son entreprise ou de son site, sauf si celui-ci correspond à des mots clés. Toutes les combinaisons sont permises dans ce cadre.
  • L'url peut être celle d'un site ou profil de réseau social, uniquement la page d'accueil
  • Pas d'adresse email jetable

*

*