Servir le contenu essentiel dans le HTML, sans attendre JavaScript
Description
Ce critère vérifie ce que lit un robot qui n’exécute pas JavaScript. iPand compare le HTML envoyé par votre serveur à la page affichée après exécution des scripts, avec le même extracteur.
Le HTML brut doit déjà contenir le titre (et le H1 si la page en a un), au moins 80 % des mots du texte principal, au moins 80 % des liens internes, les mêmes types de données structurées JSON-LD, et les coordonnées visibles : téléphone, e-mail ou adresse.
Pourquoi c’est important pour les IA
Google le rappelle : tous les robots ne savent pas exécuter JavaScript. Même Google, qui le fait, place les pages dans une file d’attente avant de les afficher, ce qui peut prendre du temps. Un contenu écrit dans le HTML servi est lisible par tout robot qui accède à la page, dès son premier passage.
- Un texte ajouté par script peut rester invisible pour les robots qui ne l’exécutent pas : la page leur paraît vide ou incomplète.
- Google ne découvre que les liens écrits sous forme d’éléments <a> avec un attribut href ; un bouton qui change de page par script n’est pas suivi.
- Pour ses fonctionnalités d’IA, Google recommande de rendre le contenu important disponible sous forme de texte.
Comment corriger
- 1 Rendez le texte principal côté serveur Si votre site est une application JavaScript (React, Vue, Angular…), activez le rendu côté serveur, ou le prérendu des pages au moment de la publication : le serveur envoie alors une page déjà remplie. Les principaux frameworks le proposent. C’est le point qui pèse le plus dans le critère.
- 2 Écrivez le titre et le H1 dans le HTML La balise <title> et le titre H1 doivent figurer dans le HTML envoyé par le serveur, et non être ajoutés par un script après le chargement.
- 3 Servez les liens sous forme de liens a href Les liens de navigation et vers vos pages internes doivent être des éléments <a href="…"> présents dans le HTML. Un bouton ou un élément cliquable qui change de page par script n’est pas un lien pour un robot.
- 4 Placez le JSON-LD et les coordonnées dans le HTML servi Écrivez les blocs <script type="application/ld+json"> directement dans le HTML, plutôt que de les injecter avec un gestionnaire de balises. Faites de même pour le téléphone, l’e-mail et l’adresse : écrits en texte dans la page, et non chargés par un widget.
- 5 Comparez avec et sans JavaScript Affichez le code source de la page (Ctrl+U dans la plupart des navigateurs) ou désactivez JavaScript, puis vérifiez que le texte, les liens, le JSON-LD et les coordonnées y figurent. C’est ce que lit un robot qui n’exécute pas les scripts.
À retenir
Ce qui n’apparaît qu’après exécution des scripts risque de rester invisible pour une partie des robots. Servez dans le HTML tout ce que les IA doivent lire : titre, texte, liens, données structurées et coordonnées.