JavaScript : Comment un site web se comporte
Dans les premiers jours d’Internet, les pages Web étaient créées avec HTML. Lorsque CSS est arrivé, le contenu des pages Web a pu prendre un peu de style. Lorsque le langage de programmation JavaScript est entré en scène, les sites Web ont pu non seulement avoir une structure et un style, mais aussi être dynamiques.
JavaScript a ouvert de nombreuses opportunités pour la création de pages Web non statiques. Lorsque quelqu’un tente d’accéder à une page améliorée avec ce langage de programmation, le navigateur de cet utilisateur exécute le JavaScript par rapport au HTML statique renvoyé par le serveur, ce qui donne une page Web qui prend vie avec une sorte d’interactivité.
Vous avez certainement déjà vu JavaScript en action, vous ne le saviez peut-être pas ! C’est parce que JavaScript peut faire presque n’importe quoi sur une page. Par exemple, il peut créer une fenêtre pop-up ou demander des ressources tierces comme des publicités à afficher sur votre page.
Rendu côté client versus rendu côté serveur
JavaScript peut poser quelques problèmes pour le référencement, car les moteurs de recherche ne voient pas JavaScript de la même manière que les visiteurs humains. C’est à cause du rendu côté client par rapport au rendu côté serveur. La plupart des JavaScript sont exécutés dans le navigateur d’un client. En revanche, avec le rendu côté serveur, les fichiers sont exécutés sur le serveur et le serveur les envoie au navigateur dans leur état totalement rendu.
Les éléments de page cruciaux pour le référencement tels que le texte, les liens et les balises chargés côté client avec JavaScript, plutôt que représentés dans votre HTML, sont invisibles depuis le code de votre page jusqu’à ce qu’ils soient rendus. Cela signifie que les crawlers des moteurs de recherche ne verront pas ce qui se trouve dans votre JavaScript – du moins pas initialement.
Google affirme que tant que vous ne bloquez pas Googlebot de crawler vos fichiers JavaScript, il est généralement capable de rendre et de comprendre vos pages Web exactement comme un navigateur le peut, ce qui signifie que Googlebot devrait voir les mêmes choses qu’un utilisateur consultant un site dans son navigateur. Cependant, en raison de cette “deuxième vague d’indexation” pour JavaScript côté client, Google peut manquer certains éléments qui ne sont disponibles qu’une fois que JavaScript est exécuté.
Il y a aussi d’autres choses qui peuvent mal se passer pendant le processus de rendu des pages Web par Googlebot, ce qui peut empêcher Google de comprendre ce qui est contenu dans votre JavaScript :
- Vous avez bloqué Googlebot d’accéder aux ressources JavaScript (par exemple, avec robots.txt, comme nous l’avons appris au chapitre 2)
- Votre serveur ne peut pas gérer toutes les demandes de crawl de votre contenu
- Le JavaScript est trop complexe ou obsolète pour que Googlebot le comprenne
- JavaScript ne charge pas le contenu de manière “lazy” dans la page tant que le crawler n’a pas terminé avec la page et est passé à autre chose.
Inutile de dire que, bien que JavaScript ouvre de nombreuses possibilités pour la création de pages Web, il peut également avoir de graves conséquences pour votre référencement si vous n’êtes pas prudent.
Heureusement, il existe un moyen de vérifier si Google voit la même chose que vos visiteurs. Pour voir une page telle que Googlebot la voit, utilisez l’outil de “Contrôle de l’URL” de la Google Search Console. Il vous suffit de coller l’URL de votre page dans la barre de recherche de la GSC.