Demander à Google d'ignorer une/des section(s) d'une page
Motivations
Bien sûr, chacun/e d'entre nous souhaitons voir le maximum de contenu de nos pages indéxé. Mais il arrive cependant qu'il soit mal venu que certains extraits de page apparaissent dans les résultats de recherche.
Un exemple de ce que l'on peut souhaiter voir ignorer : vous avez sur chacune de vos page, un petite liste déroulante permettant de selectionner le style d'affichage (pour permettre aux internautes de modifier la couleur de fond des pages, et ainsi faciliter la lecture). Votre liste déroulante contiendra des étiquettes, qui seront interprétées par Google comme du texte, et les extraits de pages produit par Google contiendront par exemple des liste de mots comme "Fond noir fond pastel ....", etc. Ce type d'extraits ne résume que trés mal le contenu de la page, et peut même vu depuis les résultats de recherche, donner du site une impression de brouillon ou de fouilli (trés préjuciable).
Deux méthodes différentes
Il existe pour se faire, deux méthodes différentes. L'une plutôt indépendante dans l'esprit, et proposée par le petit Yahoo, et l'autre plus propriétaire dans l'esprit, et proposée par l'enorme Google.
Le standard proposé par Yahoo :
A cette fin, Yahoo avait eu une trés bonne idée, en proposant un standard indépendant de tout moteur de recherche. Cette solution consistait en une classe CSS spéciale : "class="robots-nocontent" ( voir à ce sujet www.ysearchblog.com/archives/000444.html ). Tous les éléments HTML disposant de cette classe spéciale, devaient se voir ainsi ignorés par les moteurs de recherche.
Notez que vous pouvez appliquer cette classe CSS autre chose que des éléments DIV (le DIV n'est ici qu'un exemple). Cela n'empêche pas d'ailleurs non-plus de continuer à utiliser les classes CSS naturellement sur le même élément, puisque HTML permet de donner plusieurs classes à un élément, en les listant séparés par au moins un espace (ex. class="maclasse1 maclasse2 ...").
La méthode imposée par Google
Malheureusement, Google n'a jamais jugé bon de suivre cette suggestion trés interessante, pretextant que trop peu d'internautes suive la directive de Yahoo (selon que vous soyez puissant ou misérable, etc, etc), et plutôt que d'aider Yahoo à diffuser cette bonne idée, a préféré proposer son propre standard, explicitement reservé au moteur Google, comme nous allons le voir.
Penchons nous maintenant sur la solution de Google :
Là ou Yahoo propose une classe CSS, Google propose un commentaire HTML. Précisement, pour demander à Google d'ignorer une section de contenu, il faudra placer cette section entre deux
Putting it all together (mettre tout ça ensemble)
Mais alors, est-on obliger de suivre le prosélitisme de Google (qui fait explicitement afficher dans son dans le code) en la matière ?
Non, et si vous souhaitez ne pas particulièrement soutenir Google, tout en étant compatible avec son standard "propriétaire", vous pouvez cumuler les deux standard dans le même code.
Exemple :
Cette méthode respecte les deux standards.
Avantages et inconvénients des deux méthodes
Même si vous n'avez rien contre Google, les esprits perspicaces auront sans doutes remarqué, qu'entre outre de faire afficher son nom dans le source des pages, la méthode de Google souffre d'un défaut technique : elle ne permet par la récursivité. Si vos pages sont générés par des applications CGI, sur la base d'un algorithme recursif par exemple, alors la méthode de Google ne peut pas être utilsé, alors que celle de Yahoo le peut.
Il sera tout fait possible, en utilisant le standard proposé par Yahoo, de faire par exemple :
Tandis que le code imposé par Google posera quelques problèmes dans les mêmes circonstances (car nécésssairement linéaire).
Vous devrez donc au besoin, soit choisir d'ignorer la méthode Google, soit modifier vos algorithme de générations de contenu HTML.
Bilan
Dans la majorité des cas cependant, la méthode imposée par Google, et le standard proposé par Yahoo, pourront parfaitement cohabiter.
Motivations
Bien sûr, chacun/e d'entre nous souhaitons voir le maximum de contenu de nos pages indéxé. Mais il arrive cependant qu'il soit mal venu que certains extraits de page apparaissent dans les résultats de recherche.
Un exemple de ce que l'on peut souhaiter voir ignorer : vous avez sur chacune de vos page, un petite liste déroulante permettant de selectionner le style d'affichage (pour permettre aux internautes de modifier la couleur de fond des pages, et ainsi faciliter la lecture). Votre liste déroulante contiendra des étiquettes, qui seront interprétées par Google comme du texte, et les extraits de pages produit par Google contiendront par exemple des liste de mots comme "Fond noir fond pastel ....", etc. Ce type d'extraits ne résume que trés mal le contenu de la page, et peut même vu depuis les résultats de recherche, donner du site une impression de brouillon ou de fouilli (trés préjuciable).
Deux méthodes différentes
Il existe pour se faire, deux méthodes différentes. L'une plutôt indépendante dans l'esprit, et proposée par le petit Yahoo, et l'autre plus propriétaire dans l'esprit, et proposée par l'enorme Google.
Le standard proposé par Yahoo :
A cette fin, Yahoo avait eu une trés bonne idée, en proposant un standard indépendant de tout moteur de recherche. Cette solution consistait en une classe CSS spéciale : "class="robots-nocontent" ( voir à ce sujet www.ysearchblog.com/archives/000444.html ). Tous les éléments HTML disposant de cette classe spéciale, devaient se voir ainsi ignorés par les moteurs de recherche.
Code:
<!-- Exemple -->
<div class="robots-nocontent">
... contenu à être ignorer par les moteurs de recherche ...
</div>
La méthode imposée par Google
Malheureusement, Google n'a jamais jugé bon de suivre cette suggestion trés interessante, pretextant que trop peu d'internautes suive la directive de Yahoo (selon que vous soyez puissant ou misérable, etc, etc), et plutôt que d'aider Yahoo à diffuser cette bonne idée, a préféré proposer son propre standard, explicitement reservé au moteur Google, comme nous allons le voir.
Penchons nous maintenant sur la solution de Google :
Là ou Yahoo propose une classe CSS, Google propose un commentaire HTML. Précisement, pour demander à Google d'ignorer une section de contenu, il faudra placer cette section entre deux
Code:
<!--google_ad_section_start(weight=ignore)-->
... contenu à ignorer ...
<!--google_ad_section_end-->
Putting it all together (mettre tout ça ensemble)
Mais alors, est-on obliger de suivre le prosélitisme de Google (qui fait explicitement afficher dans son dans le code) en la matière ?
Non, et si vous souhaitez ne pas particulièrement soutenir Google, tout en étant compatible avec son standard "propriétaire", vous pouvez cumuler les deux standard dans le même code.
Exemple :
Code:
<div class="robots-nocontent">
<!--google_ad_section_start(weight=ignore)-->
... contenu à être ignorer par les moteurs de recherche ...
<!--google_ad_section_end-->
</div>
Cette méthode respecte les deux standards.
Avantages et inconvénients des deux méthodes
Même si vous n'avez rien contre Google, les esprits perspicaces auront sans doutes remarqué, qu'entre outre de faire afficher son nom dans le source des pages, la méthode de Google souffre d'un défaut technique : elle ne permet par la récursivité. Si vos pages sont générés par des applications CGI, sur la base d'un algorithme recursif par exemple, alors la méthode de Google ne peut pas être utilsé, alors que celle de Yahoo le peut.
Il sera tout fait possible, en utilisant le standard proposé par Yahoo, de faire par exemple :
Code:
<!-- Exemple -->
<div class="robots-nocontent">
<p class="robots-nocontent">
... contenu à être ignorer par les moteurs de recherche ...
</p>
</div>
Vous devrez donc au besoin, soit choisir d'ignorer la méthode Google, soit modifier vos algorithme de générations de contenu HTML.
Bilan
Dans la majorité des cas cependant, la méthode imposée par Google, et le standard proposé par Yahoo, pourront parfaitement cohabiter.