J'ai 2 sites Web, les deux utilisent un cadre d'application d'une seule page. On utilise React et on utilise Angular. Aucun des deux n'a de rendu côté serveur en cours.
Lorsque j'exécute l'outil "Récupérer et afficher en tant que Google" sur la console de recherche, l'icône React s'affiche comme prévu (et je peux même vérifier qu'il est indexé en effectuant des recherches).
Lorsque je fais la même chose avec le Angular, je constate que Google ne capture pas une grande partie des informations de la page:
Quel facteur est en jeu ici pour que l'un rende correctement et pas l'autre? Que puis-je faire pour m'assurer qu'un site créé avec un framework à une seule page est correctement analysé par Google?
Je vais répondre à cette question en termes de cadres généraux parce que généralement les questions trop spécifiques sur les détails d'un site Web sont fermées ici.
Pour qu'un moteur puisse restituer les données, vous souhaitez le rendre aussi simple et compréhensible que possible. Au début, aucun moteur de recherche n’était capable de restituer le code Javascript. Cela signifie que si un site Web est entièrement réalisé en javascript, les clients sans javascript activé ne verront rien.
Ce que vous voulez faire pour vous assurer que presque tous les outils peuvent rendre (au moins le texte de) votre page, c'est pour s'assurer qu'il est accessible via HTML de base.
Je suggérerais de tester vos pages (quel que soit le cadre utilisé pour générer le code) avec autant de navigateurs que possible, y compris l'ancien navigateur Lynx.
Bien que je comprenne certains processus Javascript traités par Google, je suis certain qu’ils sont limités. Pour cette raison, si vous devez utiliser du Javascript pour afficher vos pages, utilisez le niveau de script qu'un ancien navigateur (comme Internet Explorer 7 ou inférieur) peut prendre en charge.