Balises META description en double, sous dotclear

Note: Ce petit problème mineur (mon blog a très bien vécu pendant plus de deux ans comme ça) a été corrigé avec une grande réactivité par les mainteneurs de dotclear, il y a quelques mois. Il ne s’applique ni aux thèmes utilisant le template par défaut, ni aux thèmes récents. Mais il est encore présent dans une grande partie des thèmes proposés sur dotaddict.

Dans les outils pour les Webmasters de google, il me signale qu'il existe des balises META description en double sur ce blog: Exactement la même description sur différentes pages.

webmastertoolsmeta.jpg

Il s'agit en fait des pages d'accueil,:

  • index.php
  • index.php?/page/2
  • index.php?/page/3
  • etc...

Sur la page d'accueil ou lorsque on passe aux billets précédents, la description du site (rédigée dans le tableau de bord de dotclear) sert à toutes les pages. Tandis que sur un billet à proprement parler, c'est un extrait de ce dernier qui sert à la description[1].

Si Google dit que c'est mal d'avoir des balises méta en double c'est sûrement que c'est vrai. Je me prosterne.

Pour avoir des descriptions légèrement différentes, le plus simple est d'y ajouter le numéro de la page. Le code dans le template qui va ajouter Page x sauf sur la première page (autant ne pas allourdir la description de la homepage) est le suivant:

  1. <tpl:PaginationIf start="0">{{tpl:lang page}} {{tpl:PaginationCurrent}} </tpl:PaginationIf>

Pour éliminer les métas en double.

Dans le fichier home.html du template, remplacer:

  1. <meta name="description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription cut_string="180" encode_html="1"}}" />

par:

  1. <meta name="description" lang="{{tpl:BlogLanguage}}" content="<tpl:PaginationIf start="0">{{tpl:lang page}} {{tpl:PaginationCurrent}} </tpl:PaginationIf>{{tpl:BlogDescription cut_string="180" encode_html="1"}}" />

Remplacez aussi:

  1. <meta name="dc.description" lang="{{tpl:BlogLanguage}}" content="{{tpl:BlogDescription encode_html="1"}}" />

Par

  1. <meta name="dc.description" lang="{{tpl:BlogLanguage}}" content="<tpl:PaginationIf start="0">{{tpl:lang page}} {{tpl:PaginationCurrent}} </tpl:PaginationIf> {{tpl:BlogDescription encode_html="1"}}" />

Notes

[1] C'est une généralité, mais c'est géré au niveau du template ça, ça dépend de ce dernier

Commentaires

1. Le dimanche, janvier 9 2011, 09:44 par Lomalarch

Bonjour,

juste pour préciser que cette erreur, connue, a été corrigée, il y a à peu près 8 mois (pour le thème par défaut de Dotclear au moins) : http://dev.dotclear.org/2.0/ticket/...

En revanche, les autres thèmes dérivés d’un thème par défaut antérieur et possédant leur propre _head.html n’ont pas bénéficié de cette amélioration :-)

2. Le dimanche, janvier 9 2011, 13:07 par gnieark

Bonjour,
J'ai édité mon billet dans ce sens, pour préciser que sur les thèmes récents c'est corrigé.

Comme il y a encore pas mal de thèmes qui présentent le défaut. Mon billet servira peut être à des gens cherchant à éliminer leurs balises méta en double.

Je sens que le serveur web de dotclear ne va pas m'aimer si je tente de scripter la détection des thèmes qui présentent l'anomalie. Je m'abstiens.

3. Le vendredi, juillet 13 2012, 00:11 par gnieark

Google est long à supprimmer les avertissements qui ont été levés dans les outils pour les webmasters. Patience.

j'ai vérifié le code source de ton blog, c'est OK, dotclear a bien pris en compte les modifications de template que tu as effectué.

Page top