Comment faire en sorte que les moteurs de recherche trouvent mon contenu AJAX

StackOverflow https://stackoverflow.com/questions/224698

  •  03-07-2019
  •  | 
  •  

Question

J'ai une page qui charge dynamiquement une section de contenu via AJAX.Je crains que cela signifie que le contenu ne sera pas trouvé par les moteurs de recherche.

Pour vous montrer ce que je veux dire, le site est à http://www.gold09.net et le contenu dynamique est à /haut-parleurs.php - Normalement, personne ne visiterait ce deuxième lien, il est simplement chargé sur la première page.

Je sais que je peux dire aux robots de lire le speakers.php en utilisant un sitemap.xml, mais j'obtiendrai ensuite des liens vers le fichier Speakers.php apparaissant dans les résultats de recherche.

Je suppose que la solution ultime serait que si quelqu'un demande /speakers.php il les redirige vers la page principale, alors qu'il permet aux robots de lire les données.

Aucune suggestion?

Était-ce utile?

La solution 3

Mise à jour: voici ce que j'ai fait:

Création d'une autre page intitulée viewSpeakers.php , qui ne comprend que le fichier speakers.php avec son en-tête et son pied de page standard. Cela signifie que si quelqu'un se rend sur ce site, il verra une page vaguement attrayante. Les seuls liens vers cette page se trouvent dans le code HTML de la page index.php (où il est immédiatement supprimé via javascript) et dans mon sitemap.xml.

En conséquence, les robots du moteur de recherche et les utilisateurs pour lesquels javascript est désactivé jettent un lien vers des informations sur les intervenants. Les personnes pour lesquelles javascript est activé obtiennent la qualité AJAXy des données chargées dynamiquement sur la même page d’index et n’ont jamais à connaître la page viewSpeakers.php .

Le seul inconvénient que je puisse prévoir, c’est que quelqu'un puisse accéder à la page viewSpeakers.php via une liste de recherche et ne pas être en mesure de trouver un lien vers cette page à partir de . index.php . Pas vraiment un problème ...

Ceci a été ajouté comme réponse, plutôt que de modifier la question, car c’est une façon de résoudre ce problème. Je serais toujours intéressé de savoir s’il existe un meilleur moyen que cela.

Autres conseils

Faites les liens qui pointent vers les pages que vous souhaitez indexer pour avoir un véritable HREF au contenu - mais utilisez JavaScript pour intercepter l'événement et "return false"; à la fin.

comme nelson laquet a dit que vous deviez fournir un retour: faux; sur chaque ancre que vous avez sur votre page sans omettre leurs valeurs href [car c'est ce qui est vraiment important pour les lecteurs d'écran comme google]

ce sera aussi cool si vous utilisez des méthodes de réécriture qui masqueraient ceci:
 sur votre code côté serveur, indiquez les paramètres à utiliser uniquement avec vos codes javascript, comme par exemple l'adresse

index.php?ajaxpageneeded=page1

...

<body onload="ajaxloaderscript(<?=page1?>);" >
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top