Comment ça y dit qu’y voit pas l’rapport…
La particularité d’un bon système de publication de blog comme DotClear ou WordPress est, entre autre, d’opérer une séparation entre les données et leur affichage. Comme le fait une bonne page web avec le contenu et le design grâce à XHTML et CSS. Cela se traduit souvent par l’existence d’un dossier themes qui contient généralement un fichier template.php. Ce fichier regroupe les parties communes de votre site, dont notamment les balises meta. Ce qui peut avoir des conséquences sur la visibilité de vos pages dans Google. Voyons comment…
Bon, c’est quoi le problème avec les meta ?
La balise meta name= »description » retiendra plus particulièrement notre attention. En effet, son contenu fournit souvent le résumé qui suit l’URL du site dans les résultats des principaux moteurs de recherche. (Notez toutefois que ces derniers peuvent aller chercher ces informations dans l’annuaire dmoz).
Je trouvais ce système simple et performant jusqu’au jour où une discussion sur outil-référencement m’a permis de comprendre le sens du message suivant que l’on rencontre assez souvent à la fin d’une liste de résultat :
Pour limiter les résultats aux pages les plus pertinentes (total : 48), Google a ignoré certaines pages à contenu similaire. Si vous le souhaitez, vous pouvez relancer la recherche en incluant les pages ignorées.
Il arrive donc parfois que Google annonce plus de résultats qu’il n’en apparaît à première vue. Alors, comme ça, des pages sans doute très intéressantes pour l’internaute sont traitées comme quantité négligeable par le moteur pour la recherche en cours ?
Pourtant, j’ai remarqué à plusieurs reprises que de nombreux résultats ainsi ignorés se seraient bien vu apporter leur contribution…
C’est pas moi, c’est la faute au template !
Il semble que ce message apparait lorsque les descriptions sont identiques pour l’ensemble des pages d’un site retournées par le moteur. En gros, Google considère que si le contenu de votre balise meta name= »description » se retrouve à l’identique dans les résultats, c’est que le contenu des pages en question est le même, ou tout au moins suffisamment similaire pour être écarté d’une pichenette googlienne !
Tout ça à cause d’une description pas dynamique pour un sou qui ne veut pas s’adapter au monde moderne.
Et PHP dans tout ça ?
Ce qu’il nous faudrait, c’est un moyen d’avoir une description différente lorsqu’on affiche un billet ou la page principale du blog. Je décidais courageusement de m’atteler à la tâche quand le mail d’un spécialiste du référencement attira mon attention : le webmaster d’outil-referencement.com himself venait à mon aide et me fournissait les éléments du code PHP dont j’avais besoin pour DotClear. Qu’il en soit publiquement remercié 😉
<?php $baseLine = " | Intégration XHTML, CSS et JavaScript. Ergonomie, référencement, design et développement web. Nombreux articles et tutoriaux accompagnés d'exemples fonctionnels."; if ($GLOBALS['mode'] == 'post') { ?> <meta name="description" content="<?php $metaDesc=dcPostTitle(); echo $metaDesc." ".$baseLine;?>" /> <?php } else { ?> <meta name="description" content="Intégration XHTML, CSS et JavaScript. Ergonomie, référencement, design et développement web. Nombreux articles et tutoriaux accompagnés d'exemples fonctionnels." /> <?php } ?>
L’objectif de ces lignes est de remplacer la description statique par la variable qui contient le titre du billet lorsque la variable globale mode vaut post, tout simplement. Je me suis contenté d’ajouter la variable $baseLine qui ajoute le texte de la description après le titre. Le beurre et l’argent du beurre ? Peut-être.
Pour utiliser ce script dans DotClear (version 1.2.5 en ce qui me concerne), il suffit de le coller à la place de votre balise meta description dans le fichier template.php de votre dossier theme. Si vous utilisez un autre système de blog, vous aurez au moins l’essentiel pour vous dépatouiller 😉
Comme je viens tout juste de faire le changement dans le template, il est encore trop tôt pour en ressentir les effets en terme de visibilité dans les résultats des moteurs. Mais c’est promis, je vous tiens au courant.
P.S. : la suppression pure et simple de cette balise donne aussi d’excellents résultats puisque le moteur affichera des extraits des textes situés en haut de la page. Néanmoins, je trouve que l’ajout du script permet de mieux contrôler les mots-clé. Pensez seulement à bien choisir vos titres 😉
Jolie !
Allez, puisque le sujet s’y prête et que je suis un véritable altruiste ;), voici le code pour le sutilisateurs de wordpress :
<? if (is_home()) : ?>
<meta name="description" content="<?php bloginfo(‘description’); ?>" />
<? else : ?>
<meta name="description" content="<?php wp_title( »); ?>" />
<? endif; ?>
Bonsoir Grégoire et merci,
Je pense que je ne vais pas être le seul à faire du copier-coller dans header.php 😉
a++
J’avais supprimé la balise durant un temps, mais le texte qu’il affichait alors était le menu principal et le début de l’édito, pas terrible pour le référencement.
C’est clair que la suppression de cette balise meta laisse le champ libre à l’inconnu. En me relisant à la lumière de ton commentaire, je me rend compte que j’aurais pu être plus explicite en écrivant que "…la suppression pure et simple de cette balise [peut] donne[r] aussi d’excellents résultats [si le texte visible par le moteur est pertinent]…"
Enfin quelque chose dans le genre 😉
Pour ce qui est du référencement, il peut aussi être intéréssant de se tourner vers les meta DC ( dublincore.org ) Qui permettent de rajouter un peu plus d’informations (dotclear inclus d’ailleurs par défaut la meta DC.title)
Absolument. Je vais d’abord me pencher sur la traduction en français de la description des éléments de métadonnées du Dublin Core visible à l’adresse www-rocq.inria.fr/%7Everc…
Merci pour les astuces 😉
Merci pour cet excellent code que je comptais me coder dans la semaine.
C’est maintenant chose faite grâce à vous 🙂
Merci pour ces lignes de code que je viens d’integrer dans mon template sous dotclear. Une question: comment on fait pour que ça marche aussi pour les pages connexes (plugin related)?
@Georges -> A priori, pour les pages related il n’y a rien de plus à faire 😉
Eh bien non, justement. Parce que les pages related sont hors ligne, et le code en question s’applique uniquement aux posts, qui par définition sont en ligne.
@Georges -> au temps pour moi, je suis allé trop vite en besogne et j’ai répondu à côté de la page 😉 J’ai jeté un oeil dans les méandres des fonctions related, mais je n’ai pas encore tout saisi 😉 Si une bonne âme passait par là…
Merci merci et encore 1000 fois merci !
C’est simple et efficace 🙂
De rien, Petit bout’chou 😉 Ton blog est très intéressant et je pense que je vais pas tarder à devenir accro…
Merci pour ton partage. Ca marche super 😉
Deleter23
Merci à toi Deleter23, car je sais qu’en matière de partage de connaissances tu es loin devant 😉
hum ? "vesion 1.2.5 en ce qui me concerne" 😉