Nouvelle balise « canonical » pour éviter le duplicate content

Le duplicate content (contenu dupliqué) est l’une des bêtes noires des référenceurs et des webmasters soucieux du bon positionnement de leur site dans les moteurs de recherche. Pour ceux qui ne seraient pas familiers avec les techniques de référencement, un contenu dupliqué est une page web reproduite en plusieurs exemplaires identiques sur internet. Il peut

Le duplicate content (contenu dupliqué) est l’une des bêtes noires des référenceurs et des webmasters soucieux du bon positionnement de leur site dans les moteurs de recherche.

Pour ceux qui ne seraient pas familiers avec les techniques de référencement, un contenu dupliqué est une page web reproduite en plusieurs exemplaires identiques sur internet. Il peut y avoir plusieurs raisons, volontaires ou involontaires à la duplication de contenu, parmi elles : la même page dans plusieurs catégories d’un même site, les flux RSS qui dupliquent les pages, mais aussi des raisons malveillantes de copie non autorisée d’un site web. Ou encore, la plus simple, souvent oubliée par les webmasters débutants : le fait qu’un même site soit nativement accessible à deux adresses, avec ou sans le www avant le nom de domaine.

Le duplicate content est mauvais pour un site car il dilue la valeur des pages dans l’algorithme de Google (plusieurs pages présentant le même contenu ont chacune moins de poids qu’une seule), qui peut même pénaliser ces dernières en les désindexant car il ne peut identifier quelle est celle d’origine à laquelle il doit donner le meilleur positionnement.

Il existe plusieurs bonnes pratiques pour éviter le duplicate content, que je n’énumèrerai pas ici (une recherche sur Google devrait répondre à vos questions), mais une nouvelle possibilité vient s’ajouter à l’arsenal des référenceurs  : Google annonce sur son blog pour webmasters qu’il vient de valider une balise HTML « canonical » qui permet d’éviter le duplicate content en indiquant à ses robots quelle page est la page d’origine en cas de contenu dupliqué.

La balise est à insérer dans la section <head> du code HMTL des pages qui dupliquent un contenu, de la façon suivante :

<link rel= »canonical » href= »http://www.votresite.com/pagedorigine.html » />

Ainsi, les pages de duplication ne sont plus indexées et indiquent aux moteurs de recherche quelle est la page d’origine qu’il faut indexer et à laquelle il faut attribuer tout le poids, ainsi que le pagerank.

Chose rare, cette méthode, qui ne fonctionne qu’à l’intérieur d’un même domaine y compris dans les sous-domaines de celui-ci, est validée par Yahoo! et Microsoft, et la balise est donc prise en compte dans leurs moteurs de recherche.

Une bonne nouvelle n’arrivant jamais seule, un plugin pour WordPress est déjà disponible afin de simplifier l’implantation de cette balise.


Nos dernières vidéos

52 commentaires

  1. Merci pour cette explication de texte…
    En fait, j’ai déjà vu cette info sur d’autres blogs, mais je n’avais pas saisi réellement le fonctionnement.

    Par contre dans WordPress, il y a-t-il déjà quelque chose pour signifier cette balise (plugin, astuce…) ?

  2. C’est pas mal en interne, par exemple quand on a, ou pas, le www au debut de l’url, mais ca ne change rien pour la copie du contenue ? ca n’empeche pas quelqu’un de mettre la même page sur son site en changeant juste le canonical… ?

  3. Eric

    @pilou :
    ça n’empêche pas le DC extérieur (un autre site qui pompe votre contenu) car cela ne fonctionne qu’à l’intérieur d’un même site

  4. Etonnant !
    Google avait pourtant communiqué récemment sur le Duplicate-Content en indiquant que le Duplicate « interne » ne devait pas être une obsession car leur algorithme se débrouillait pour trouver la page « source ».

    J’avais déjà mis en place un robots.txt pour « guider » Google. Je vais surement ajouter cette nouvelle balise pour parfaire le tout…

  5. C’est dommage pour le DC externe car c’est généralement de ça que les webmasters veulent se protéger.

    @Quiz: il me semblait aussi, notamment avec la date de création du contenu, non?

    Question au passage : des liens en interne avec le titre exact de l’article sont considérés comme DC interne? (type « derniers articles »)

  6. Non mais la bonne blague :/

    Une fois de plus les moteurs de recherche nous font faire leur boulot et le pire c’est qu’on va encore être obligé de le faire car plein de webmasters le font 😐

    encore une plaie de plus avec le nofollow.

  7. « Une bonne nouvelle n’arrivant jamais seule, un plugin pour WordPress est déjà disponible afin de simplifier l’implantation de cette balise. »

    WordPress toujours au taquet. C’est ça qui est bien avec cette communauté.

  8. je trouve navrant de devoir toujours plus se plier aux exigences du géant sous peine de se voir pénalisé. C’est pas son métier de base, au moteur, de trier le bon grain de l’ivraie ?

  9. Pense comme @Phileas et @If+Is+Dead, c’est une bien triste nouvelle…

    Google se met à inventer des balises pour satifaire le webmaster moyen !! Alors qu’un simple rewrite ferait l’affaire.

    Pour ma part, c’est non non non et non, je ne l’utiliserai pas (on se souvient du fiasco du nofollow)

    Et pour répondre à @kevin, W3C fait la grimace

  10. Mais pour les « www » , on ne peut pas utiliser « le domaine favori » dans les outils Google ?

    Perso j’ai regardé je suis accessible avec et sans « www » et sans redirection, et je ne pense pas être en DC.

  11. Je m’interroge sur l’utilité du plugin wordpress… En effet, sous wordpress, les redirections entre les différents types de permalinks sont gérées correctement…

    Ensuite, le duplicate content va plutôt toucher les archives qui vont rentrer en conflit avec les articles seuls si l’on n’utilise pas les excerpts mais même dans ce cas, vers quoi rediriger la catégorie?

    Après, y a les liens de commentaires mais Google gère déjà cela correctement…

  12. Haha, en lisant le titre vite fait j’ai cru que ça parlerai d’Ubuntu 😀 .

    Bref, encore une fois Google essaye de nous prouver qu’il est le maître du web. Malheureusement, ça marche. Mais que fait la poli… heu la W3C ?

  13. > C’est pas son métier de base, au moteur, de trier le bon grain de l’ivraie ?

    @Phileas, il se trouve que Google fait déjà ce tri et s’en sort souvent bien en filtrant les liens dupliqués (je donnais cet exemple à des collègues: http://tinyurl.com/cspqnq )

    …mais il y a parfois des loupés (page « imprimer » mieux classée que page d’article, etc.) et surtout ces liens multiples ont pour conséquence de diluer le poids/pagerank de chaque ressource.

    L’objet de cette nouvelle balise, si j’ai bien compris, est de laisser la main au webmaster pour indiquer l’URL originale.

    C’est peut-être aux moteurs de recherche de se débrouiller mais je ne suis pas mécontent d’avoir enfin une solution à mon sens plus simple à implémenter que les règles de redirections et autres astuces.

  14. Merci, mais attention aux guillemets « Microsoft » employés ci-dessus dans la ligne de syntaxe.
    Il faut bien entendu les remplacer par des guillemets simples, sinon la validation W3C échoue.

    @Kevin: oui, cela passe la validation si on le met avec les autres balises analogues et les guillemets corrects.

  15. Bon plugin et bonne idée, mais ne doit pas faire un article ou un site pour plaire et fidéliser des lecteurs. Si les bots ne savent pas reconnaitre l’original, c’est leurs problèmes. D’un point de RSS, on a pas besoin de Plugins, pour gérer la taille et ce que l’on veut afficher dans notre flux… Je reste perplexe

  16. Pour ceux qui ont un problème de DC avec le domaine, configurez l’url par défaut dans webmaster tools et faites un rewrite dans votre htcaccess du type :

    RewriteCond %{HTTP_HOST} ^site.fr$
    RewriteRule ^(.*) http://www.site.fr/$1 [QSA,L,R=301]

    Moi perso j’ajoute aussi un AddType x-mapp-php5 .php à la fin, au cas où.

  17. Bonjour,
    Merci de cet article intéressant.
    Une petite question que je me pose sur la mise en place technique. Si l’on est dans le cas d’un blog avec des pages dynamiques en php et non en html, que doit-on entrer comme url ?
    Pour ma part, j’ai indiqué dans la balise head du template, l’url principal de blog tout simplement (ou alors faut-il saisir toutes les urls des articles manuellement dans ce fichier template ?)
    Je ne sais pas si c’est la bonne démarche ?

    Merci de votre aide si vous avez une minute,
    bonne journée !

  18. Je suis tout à fait d’accord avec If+Is+Dead, encore un truc de merde pour les weby qui savent pas faire leur taf correctement.

    Quelqu’un peut m’expliquer l’intérêt du truc parce que je vois vraiment pas, si un contenu est listé sur plusieur catégorie, rien n’empêche de mettre le liens vers le contenu indépendamment de la categorie.

    Du genre mon article sur le dernier télephone trop bien qui fait rasoir est listable dans la categorie hi-tech et dans la catégorie téléphones, rien n’empeche de mettre un liens dans vers /telephones/1.html dans le listing de la catégorie hi-tech.

    La seul application possible c’est pour les liens d’affiliation avec le mon-produit.html?aff=1234 et encore parce que il est largement possible de le remplacer par mon-produit.html#aff=1234 et comme c’est une anchor => une seul URL.

    Enfin bref encore un truc pour les gens qui font la moitié du boulot.

    Désolé Eric de mettre ce commentaire sur ton blog et si tu le supprimes je t’en tiendrai par rigueur mais tout le monde présente ce truc comme THE TIPS sans réfléchir, et en faite c’est, pour reprendre ce que disait If+Is+Dead, « encore une plaie de plus avec le nofollow ».

  19. Bonjour,
    Quelqu’un aurait-il la réponse ma question précdente svp ?
    Merci à vous.
    La revoici : Si l’on est dans le cas d’un blog avec des pages dynamiques en php et non en html, que doit-on entrer comme url ?
    Pour ma part, j’ai indiqué dans la balise head du template, l’url principal de blog tout simplement (ou alors faut-il saisir toutes les urls des articles manuellement dans ce fichier template ?)
    Je ne sais pas si c’est la bonne démarche ?

    Merci de votre aide si vous avez une minute,
    bonne journée !

  20. Salut une+lectrice, va plutôt poser ta question dans un forum du genre webrankinfo.com.

    Mais pour répondre vite fait, il ne faut surtout pas mettre la même url sur toutes les pages, sinon les moteurs vont plus rien comprendre (et c’est ce que tu as fait en mettant ton url « en dur » dans le template).

    Donc dans le principe il faut que tu mettes ton url de trackback dans cette balise (de merde :D), donc comme tu l’a devinée il faudrait mettre les url de tes articles.

    Et comment on fait ça ? … c’est le principe d’un template tu as des variables qui sont remplacer dynamiquement par des valeurs, mais je te conseille de creuser une peu le sujet des templates avant de faire des modifs comme cela.

    Bon apprentissage à toi et n’oublie pas que les forums sont la pour ce genre de question, même si tu risques de te faire incendié, c’est pas bien grave, c’est la joie du débutant :D.

  21. une lectrice (débutante en effet...) on

    Bonjour petitchevalroux,
    Merci de m’avoir répondu et désolée de ne pas avoir posé ma question sur un forum mais après tout les blogs peuvent aussi servir à s’entraider non ?
    Peut-être que cela pourra en aider d’autres au passage.

    Sinon j’avoue ne pas avoir tt compris, hormis que j’avais mal fait, j’ai dc retiré mon url du template.

    Quand tu dis qu’il faut que je mettre l’url de trackback (de chaque article potentiellement dupliqué je suppose), n’est-ce pas plutôt l’url de « lien permanent » ?

    Merci encore de ton aide et désolée si mes interrogations semblent stupides…

    Bonne soirée,

  22. Désolé je ne parle pas couramment le wordpress ou autre moteur de blog ;), mais oui c’est le permalien qu’il faut mettre le problème c’est qu’il faut de le mettre sous forme de variable dans le template, car cette valeur doit être remplacée pour chaque article en php.

    Comme son nom l’indique une variable est faite pour varié :D.

    Donc si tu arrives à idenfifier la variable permalien dans ton template tu peux effectivement mettre cette variable dans l’attribut href de ta balise canonical. Ca te ferait un truc du genre :

    En supposant que {PERMALINK} correspond à la variable de lien permanent de ton template.

    Ne connaissant pas ton moteur de blog, et n’ayant aucune envie d’y jeter un oeil (c’est souvent l’enfer ce genre de truc), je peux seulement t’apporter une aide théorique qui me vient de ma connaissance générale des CMS.

    Et maintenant, en supposant que tu as compris tout ce que j’ai dit et que tu maitrises les notions de variables et de templates, je pense que tu en sais autant que moi :D. Si ce n’est pas le cas je t’invites encore une fois à te tourner vers le forum d’entraide de ton moteur de blog.

    PS : Tes interrogations ne sont pas stupides, elle sont juste celle d’une débutante et comme il faut bien apprendre, tu as aucunes raisons de t’excuser sauf si tu n’as pas fait l’effort de chercher des réponses déjà existantes. Et la je vais me facher tout rouge :D.

    Enfin bref pour quelqu’un qui trouve cette balise débile je pense que j’en ai déjà trop dit :D.

  23. une lectrice (qui apprend :-) on

    Un grand merci à toi.
    Je ne connais pas encore la syntaxe de cette url variable pour mon moteur de blog (Doctclear) mais je vais me renseigner.
    J’y vois bp plus clair en effet.
    Alors merci de m’avoir répondu et bonne soirée !

  24. Je ne suis pas un professionnel mais je pose quand même mon point de vue.

    Pour lutter contre le duplicate contente externe dont mon site http://www.wakatrip.com fait parfois les frais. Il faudrait le même type de démarche que « canonical », mais au lieu que cela permette aux pages dupliquées d’aiguiller google vers la page d’origine.
    Il serait judicieux que les webmasters & blogueurs puissent intégrer un code de ce type, mais dans leur page originale.
    Ainsi, les pages identiques qui n’auraient pas ce fameux code, seraient qualifiées comme DC…beaucoup plus simple, non?…après je ne sais pas si c’est réalisable. Avis des pros ?

    Qu’en pensez-vous?

  25. Le problème c’est que si le copieur met sa propre url dans la page copié … on a toujours du DC 😉 et pourtant les deux ont une url « officielle » indiquant que c’est leur contenu …

    Personnellement je trouve que les moteurs de recherche sont trés bon dans la detection du DC donc je pense que le DC n’est pas un soucis si son propre site n’est pas générateur de DC.

    Que les autres face du DC avec du contenu ils font ce qu’ils veulent mais ils finiront par se faire fouetter un jour ou l’autre.

  26. Pingback: Dis papa, c’est quoi le duplicate content ?

  27. Pingback: Dis papa, c’est quoi le duplicate content?

  28. Cela fait un peu avancer ma réflexion sur ce problème auquel je suis confronté actuellement. Seulement je me demande si c’est vraiment la bonne solution si les pages qui contiennent le désormais identifié « duplicate content » ne sont plus indéxées par le moteur de recherche.

  29. A priori Leslie Rodhe un des godfather du SEO dit que google n’a jamais vraiment rien dit au sujet du duplicate content et que pret de 60% du contenu sur Internet est déja du duplicate. (ce qui n’est pas faux)
    C’est en anglais ici

  30. Bonjour,

    moi j’ai un problème un peu différent, à savoir que je me fais plagier mon site en permanence. Les indélicats, bien entendu, ne renvoient pas vers mon site avec les balises canonical, comment éviter alors ce type de problématiques?

    Merci encore

Répondre