Portrait Olivier Duffez

Olivier Duffez

Créateur de WebRankInfo,
consultant en référencement

Google tient compte des liens JavaScript OnClick

La semaine dernière fut riche en annonces fracassantes de la part de Google : en plus du changement de politique pour les liens nofollow (j'y reviendrai), c'est du côté des liens JavaScript qu'il y a du nouveau. Comme je l'indiquais en direct pendant la formation au netlinking à Paris, nous avions remarqué depuis décembre 2008 dans notre laboratoire Ranking Metrics des robots spécifiques de Google qui tenaient compte de certains codes JavaScript (dont l'événement onClick). Il semblerait que cela soit désormais répandu... Revue de détails dans cet article.

Depuis cette époque, considérez que désormais Google sait gérer presque tous les codes Javascript !

L'annonce de Google par Maile Ohye (Google I/O 2009)

Le 29 mai, Vanessa Fox écrivait dans un article détaillé sur Search Engine Land que Google tenait désormais compte des liens Javascript du type onclick(). Consultante spécialiste des moteurs de recherche, Vanessa a travaillé chez Google et notamment créé les outils Google Webmaster Tools : on peut donc a priori lui faire confiance !

L'annonce de Google avait été faite par Maile Ohye à l'occasion de l'événement Google I/O. Les plus motivés parmi vous iront peut-être voir la vidéo de la session équivalent de 2008 (elle dure près d'une heure tout de même).

D'après Vanessa Fox, Google sait d'ores et déjà interpréter tous les événements onclick() situés sur n'importe quelle balise (pas seulement <a href>), à condition que le code JavaScript correspondant soit situé dans la page HTML elle-même et non dans un fichier externe.

Exemples de codes JS détectés par Googlebot

Voilà donc des exemples de codes pour lesquels Google détecte un lien qui passe du PageRank et de l'information sémantique :

<div onclick="document.location.href='http://foo.com/'">
<tr onclick="myfunction('index.html')">
<a href="#" onclick="myfunction()">new page</a>
<a href="javascript:void(0)"
 onclick="window.open('welcome.html')">open new window</a>

Malgré cette avancée, Google indique regarder encore ce qu'il y a dans les éventuelles balises onclick(), que l'on peut utiliser à condition qu'elles contiennent l'équivalent de ce qui est affiché quand le JavaScript est activé.

Un lien vendu peut-il être codé en JavaScript sans nofollow ?

Partant du principe que Google ne tient pas compte des liens JavaScript, certains sites ont codé des liens commercialisés sur leurs pages à l'aide d'une fonction JavaScript. Si ces liens sont désormais suivis par Google, s'ils transmettent du PageRank, cette pratique est-elle acceptée par Google ou bien faut-il absolument ajouter l'attribut rel="nofollow" pour respecter les consignes ? Cela ne me semble pas très clair pour l'instant. Pour rappel voici les consignes de Google concernant les liens JavaScript et autres redirections JavaScript :

Redirections JavaScript trompeuses

Lorsque Googlebot indexe une page contenant un script JavaScript, il ne peut pas suivre ou indexer les liens cachés dans le script lui-même. L'utilisation d'un script JavaScript est une pratique Web totalement légitime. Toutefois, son utilisation dans le but de tromper les moteurs de recherche ne l'est pas. Par exemple, le fait de placer du texte différent dans le script JavaScript et dans une balise noscript constitue une infraction à nos conseils aux webmasters, car cette pratique présente aux utilisateurs (qui accèdent au texte JavaScript) un contenu différent de celui destiné aux moteurs de recherche (qui accèdent au texte noscript). Il y a également infraction aux conseils aux webmasters lors de l'intégration d'un lien dans un script JavaScript qui redirige l'utilisateur vers une autre page avec l'intention de lui présenter une page différente de celle destinée au moteur de recherche. Lorsqu'un lien de redirection est intégré dans le script JavaScript, le moteur de recherche indexe la page initiale plutôt que de suivre le lien, alors que les utilisateurs sont dirigés vers la cible de la redirection. À l'instar du "cloaking", cette pratique est trompeuse car elle présente aux utilisateurs un contenu différent de celui destiné à Googlebot, et peut diriger un visiteur vers une page autre que celle à laquelle il souhaitait accéder.

Notez que le fait de placer des liens dans le script JavaScript ne constitue pas à lui seul une pratique trompeuse. Lors de l'analyse du script JavaScript de votre site afin de vérifier s'il est conforme à nos recommandations, tenez compte de l'intention finale.

Tenez compte du fait que les moteurs de recherche ne pouvant généralement pas accéder au contenu du script JavaScript, les liens légitimes qu'il contient ne leur seront donc pas accessibles (de même qu'aux visiteurs sans navigateurs JavaScript). Vous pouvez à la place conserver les liens en dehors du script JavaScript ou les répliquer dans une balise noscript.

Autres conséquences

Bien évidemment, certaines pages jusqu'alors accessibles uniquement par des liens JavaScript vont être indexées par Google, ce qui risque de perturber un certain nombre de webmasters...

Pour ma part, je n'ai pas encore fini tous les tests nécessaires à l'analyse. Et vous, que pensez-vous de la prise en charge du onclick par Google ?

Cet article vous a-t-il plu ?

Note : 3.0 (2 votes)
Cliquez pour voter !

Laisser un commentaire

Remarques :

  • Si vous souhaitez poser une question ou détailler un problème technique, il ne faut pas utiliser le formulaire ci-dessous qui est réservé aux avis. Posez votre question directement dans le forum Gmail de WebRankInfo. L'inscription est gratuite et immédiate.

  • En postant un avis, vous acceptez les CGU du site WebRankInfo. Si votre avis ne respecte pas ces règles, il pourra être refusé. Si vous indiquez votre adresse email, vous serez informé dès que votre avis aura été validé (ou refusé...) ; votre adresse ne sera pas utilisée pour vous envoyer des mailings et ne sera pas revendue ou cédée à des tiers.

17 commentaires

dadaw83

Bonjour,
Je ne suis pas très calé en codage et je voudrais savoir si ce type de redirection ci-dessous serait lu par google et si c'est le cas cela pénaliserait-il mon site?
Avez-vous une autre technique de redirection non pénalisante par google?

:

- sur ma page html, j'ai placé cette balise:

clique sur l'image

- plus bas j'ai placé ce code javascript:

$("#pub").click( function(){
var lien = document.getElementById('pub');

lien.setAttribute('href', 'http://www.lienVersUnAutreSite');

});

Merci pour vos réponses,
Dadaw83 ...

Répondre
Indexnet

Bonjour,

Ya t'il que la technique de Locust pour être quasiment sûr que Google ne le suivra pas ? C'est assez embêtant si on ne veux pas qu'un lien externe soit indexé par exemple, pour les internes il ya la solution de pas indéxer la page, mais si on veux l'indexer et pas indexer le lien c'est assez prise de tête aussi !

Répondre
Olivier Duffez

"si on ne veut pas qu'un lien externe soit indexé"
on peut interdire aux moteurs de tenir compte du lien dans l'algorithme de classement
si on veut interdire l'indexation d'une page, ça ne se fait pas via un lien mais via la balise meta robots (noindex)

Répondre
Gracianne

Par rapport au Javascript, jusqu'à maintenant, je me suis toujours fiée à la version en cache faite par Google, par exemple, pour voir ce que donne une page, pour avoir une réponse sur cette problématique, car on n'obtient pas la même chose quand on désactive les Javascript via WebDeveloper.
C'est problématique, notamment pour la réalisation des menus d'un site web, pour lesquels le javascript permet de faire des effets sympas mais devient bloquant systématiquement dans tous les tests que j'ai fait au vue du cache. Je ne vois pas les menus.
Le menu en css m'a paru être la seule bonne solution...
De plus toutes les fonctions dans une page, au lieu de les avoir dans un fichier externe, cela fait très fouillis au bout d'un moment...
C'est sûr, cette technique de mettre le code javascript qui correspond dans la page pour que les liens soient pris en compte ou faut il encore attendre et ne pas changer ces habitudes ?
N'est-ce-pas la version en cache à laquelle il faut se fier ?

Répondre
MyToS

Plus que la détection des spoofers de contenus, le but de l'indexation de ce type de contenus me semble plus se tourner vers les sites AJAX ne proposant pas de navigation sans JS.

Répondre
Immobilier

Cela fait un petit bout de temps que google suit le javascript simple, il me semble qu'il n'y a rien de nouveau. Par contre, pour le javascript complexe (feuilles externes, parseur plus évolué), je pense que les ingénieurs de Google vont devoir lutter encore un peu!

Répondre
Nicolas

En fait, Google traite les pages de manière automatisée donc certainement avec une détection des URL réalisée par le biais de masques (expressions régulières).
Ainsi si l'URL est écrite dans la page (et non externalisée dans un fichier JS), celle-ci peut être détectée même si elle est écrite dans un portion de JavaScript.

Répondre
Le Webmarketeur

Je trouve çà très bien surtout pour le linking interne des sites. Beaucoup de nos clients ont des sites avec des liens en JavaScript et la modification de ces liens et souvent très contraignant pour le prestataire web qui bosse souvent sur un modèle de CMS.
Pour moi c'est une bonne nouvelle si Google sait détecter ce qui est de la pub et ce qui n'en est pas. Sinon se sera à celui qui paie le plus qui sera le mieux positionné...

Répondre
Locust

Il ne suit pas tous les liens javascript par exemple en mettant ce code dans un fichier js externe :
var a =0;
if(a==0){
document.write('<a href="http://example.com" rel="nofollow">lien</a>')
}

il ne le détectera apparemment pas, à confirmer pour ceux qui veulent tester.

Répondre
Olivier Duffez

@locust : en effet Google aurait précisé qu'il ne traite pas les javascripts externes
par ailleurs dans ton exemple le lien est nofollow donc il ne va pas non plus en tenir compte

Répondre
Kilroy

Bon, eh bien il ne restera plus que l'obfuscation pour être sur que les moteurs de recherche n'iront vraiment pas chercher ce qu'il y a derrière les liens.

Répondre
koifaire

Franchement on se demande ce que les ingénieurs de google on en tête !!!
A part indexer des pages inutiles et créer du duplicate content je ne vois vraiment pas l'intérêt de suivre les liens en javascript, ils n'ont pas assez à faire avec les liens classiques?
Pour ce qui est du cloaking les robots savent déjà l'identifier, pas besoin d'indexer les pages...

Répondre
Weborganqiue

Bonjour,

C'est une bonne info que Google annonce; donc, si je comprends bien le lien de redirection présent dans une page sur optimisée va enfin être suivi par le robot spécifique "onclick", ce qui va faire apparaitre au grand jour les tromperies "cloaking" des webmasters et référenceurs peu scrupuleux et tampis pour Google si ces pages sont bourrées d'adsense. Il va y avoir des places à gagner une fois le ménage terminé, mais ça doit encore être un travail d'arrache-pied.
@Nicolas, c'est un test très intéressant que tu livres ici, merci.

François

Répondre
Denis

Salut tous,
je trouve ça moyen. C'est bien car c'est une évolution assez sympa dans le principe. C'est moins bien pour tous les intégrateurs qui se battent pour avoir un code propre non intrusif. J'ai l'impression que ça nous fait un peu régresser pour le coup.

Répondre
mathieujava

La question que je me pose est sur la valorisation d'un lien nofollow ou JavaScript par le moteur?

Peut être y a-t-il deux types de réponse?

Tous nos liens nos nofollow sur les commentaires de blogs, les mots clés parasites ou pages inintéressantes pour le référencement vont-elles être valorisées.

De même que si j'ai des liens sur wikipédia, vais-je être mieux positionné?

Je n'aurais pas de JUS mais une simple prise en compte peut supposer un minimum de valorisation, non?

Ensuite, quel lien ne sera pas pris en compte?

Les pages pop up pourraient être la solution pour des contenus inintéressants.

La vrai question c'est quel type de lien peut être utilisé par l'utilisateur et pas vu par les moteurs?

Répondre
Olivier Duffez

@mathieujava : un lien nofollow reste ignoré, non valorisé

Répondre