Comprendre les bases du SEO JavaScript

JavaScript joue un rôle crucial dans la plate-forme Web. En effet, ses nombreuses fonctionnalités lui permettent de convertir le Web en une plate-forme applicative puissante. En permettant à la recherche Google d'accéder à vos applications JavaScript, vous pouvez non seulement attirer de nouveaux utilisateurs, mais aussi accroître l'engagement avec les utilisateurs existants lorsqu'ils recherchent du contenu fourni par une ou plusieurs de vos applications. Bien que la recherche Google utilise JavaScript avec une version toujours actualisée de Chromium, plusieurs optimisations sont possibles.

Ce guide décrit comment la recherche Google traite JavaScript et partage des bonnes pratiques permettant d'améliorer la visibilité des applications Web JavaScript dans la recherche Google.

Comment Googlebot traite-t-il JavaScript ?

Googlebot traite les applications Web JavaScript en trois phases principales :

  1. Exploration
  2. Affichage
  3. Indexation

Googlebot explore, affiche et indexe les pages.

Googlebot extrait une URL de la file d'attente d'exploration, l'explore, puis l'envoie en phase de traitement. La phase de traitement extrait les liens qui remontent dans la file d'attente d'exploration, puis met la page en file d'attente pour l'affichage. La page passe de la file d'attente d'affichage au moteur de rendu, qui renvoie le code HTML affiché à la phase de traitement, qui indexe le contenu et extrait les liens avant de les placer dans la file d'attente d'exploration.

Lorsque Googlebot extrait une URL de la file d'attente d'exploration via une requête HTTP, il vérifie d'abord si vous en autorisez l'exploration. Googlebot lit alors le fichier robots.txt. Si l'URL est marquée comme non autorisée, Googlebot n'envoie pas la requête HTTP pour cette URL et ignore cette dernière.

Googlebot analyse ensuite la réponse pour les autres URL dans l'attribut href des liens HTML, puis ajoute les URL à la file d'attente d'exploration. Pour empêcher la découverte de liens, utilisez le mécanisme nofollow.

L'exploration d'une URL et l'analyse de la réponse HTML conviennent particulièrement aux sites Web classiques ou aux pages affichées côté serveur dans lesquelles le code HTML de la réponse HTTP inclut tout le contenu. Certains sites JavaScript utilisent le modèle "shell d'application". Dans ce cas, le code HTML initial ne comporte pas le contenu réel, et Googlebot doit exécuter JavaScript avant de pouvoir lire le contenu de la page générée par JavaScript.

Googlebot met toutes les pages en file d'attente pour l'affichage, sauf si une en-tête ou une balise Meta pour les robots indique à Googlebot de ne pas indexer la page. La page peut rester dans cette file d'attente pendant quelques secondes ou pendant plus de temps. Une fois que les ressources de Googlebot le permettent, l'environnement Chromium sans interface graphique affiche la page et exécute le code JavaScript. Googlebot recherche à nouveau les liens dans le code HTML affiché, puis met les URL en file d'attente pour l'exploration. Googlebot utilise également le code HTML affiché pour indexer la page.

Gardez à l'esprit que l'affichage côté serveur ou le pré-affichage est recommandé, car il permet aux utilisateurs et aux robots d'exploration d'accéder à votre site plus rapidement. De plus, tous les robots n'utilisent pas forcément JavaScript.

Décrire votre page avec des titres et des extraits uniques

Le recours à des titres uniques et descriptifs, ainsi qu'à des meta descriptions utiles aide les utilisateurs à identifier rapidement le résultat le plus adapté à leur objectif. Pour en savoir plus, reportez-vous à ces consignes.

Vous pouvez utiliser JavaScript pour définir ou modifier la méta description et le titre.

S'assurer que le code est compatible

Les navigateurs proposent de nombreuses API, et le langage JavaScript évolue rapidement. Googlebot impose certaines limitations concernant les API et les fonctionnalités JavaScript acceptées. Pour vous assurer que le code est compatible avec Googlebot, suivez les instructions permettant de résoudre les problèmes liés à JavaScript.

Utiliser des codes d'état HTTP adéquats

Googlebot utilise les codes d'état HTTP pour déterminer si une erreur s'est produite lors de l'exploration de la page.

Vous devez utiliser un code d'état adéquat pour indiquer à Googlebot si une page ne doit pas être explorée ou indexée (code 404 pour une page introuvable ou code 401 pour les pages protégées par des identifiants de connexion, par exemple). Vous pouvez utiliser des codes d'état HTTP pour indiquer à Googlebot si une page a été migrée vers une nouvelle URL. L'index pourra ainsi être mis à jour en conséquence.

Voici une liste des codes d'état HTTP accompagnés d'une description des cas d'utilisation possibles :

État HTTP Cas d'utilisation
301/302 La page a été migrée vers une nouvelle URL.
401/403 La page n'est pas disponible en raison de problèmes d'autorisations.
404/410 La page n'est plus disponible.
5xx Une erreur s'est produite côté serveur.

Utiliser les balises Meta pour les robots avec précaution

Vous pouvez empêcher Googlebot d'indexer une page ou de suivre des liens via une balise Meta pour les robots. Par exemple, l'ajout de la balise Meta suivante en haut de la page empêche Googlebot d'indexer cette dernière :

    <!-- Googlebot won't index this page or follow links on this page -->
    <meta name="robots" content="noindex, nofollow">

Lorsque Googlebot identifie la directive "noindex" "dans la balise Meta pour les robots, il ne procède ni à son affichage, ni à son indexation.

Résoudre les problèmes liés aux images et au chargement différé du contenu

Les images consomment souvent beaucoup de bande passante et peuvent nuire aux performances. Une bonne stratégie consiste à recourir au chargement différé afin de ne charger les images que lorsque l'utilisateur est sur le point de les consulter. Pour vous assurer que vous mettez en œuvre la fonctionnalité de chargement différé sans affecter l'expérience de recherche des internautes, suivez ces consignes.

Envoyer des commentaires concernant…