web-dev-qa-db-fra.com

Comprendre l'exploration Ajax du site de recherche

J'ai quelques questions sur l'exploration Ajax d'un site Web, qui est en quelque sorte un moteur de recherche. La base article explique le mécanisme permettant de rendre AJAX applications explorables. Tous ces éléments avec des instantanés HTML sont clairs et faciles à implémenter, mais je ne comprends pas où le Google Bot "trouve de jolies AJAX URL" (c'est-à-dire www.example.com/ajax.html#key=value) pour les indexer.

La première chose qui m'est venue à l’esprit est la chapelure. Dans un sitemap, nous sommes en mesure de spécifier des pages avec des chapelures/liens, afin que les robots des moteurs de recherche puissent explorer ces pages et obtenir des instantanés HTML à partir de là. Mais, j'en suis sûr, il existe d'autres moyens de donner à ces bots ces "jolies AJAX _ URL" ".

Dans notre cas, nous avons un site de recherche simple, où les utilisateurs saisissent des mots-clés, appuyez sur "Rechercher", js exécute la requête Ajax, reçoit une réponse JSON et remplit la page de résultats (sans aucune actualisation, bien sûr). Dans ce cas, comment pouvons-nous nous assurer que le bot Google analyse tous les résultats de la recherche en plus d'ajouter un plan du site avec des liens vers tous les résultats de recherche?

Existe-t-il un exemple de solution, décrit dans l'article ci-dessus?

4
vacuum

Créez simplement un sitemap XML de vos pages de contenu réelles (les offres d'emploi), envoyez-le à Google et utilisez un script pour le tenir à jour. C'est tout ce que vous devez faire.

En règle générale, il est inutile d'essayer de faire indexer par Google les pages de résultats de recherche sur site. Google est un moteur de recherche et est parfaitement capable d'indexer directement vos pages de contenu. Laisser un moteur de recherche (Google) indexer les pages de résultats d'un autre moteur de recherche (votre recherche sur site) est tout simplement idiot et ajoute une couche inutile d'indirection. Dans le pire des cas, cela pourrait même entraîner des problèmes importants:

  • Si les résultats de la recherche sur votre site étaient explorables, Googlebot pourrait décider de passer tout son temps à explorer l'espace quasi infini des résultats de recherche possibles, le temps nécessaire à l'application. indexez vos pages de contenu réelles.

  • De plus, étant donné que le bot aurait autant de pages à explorer, il ne les redirigerait que rarement. Si votre site n'était pas complètement statique, cela signifierait que la plupart des pages de votre site dans l'index de Google seraient périmées. Cela pourrait conduire à une expérience utilisateur moche et à une baisse du nombre de conversions, car Google enverrait les utilisateurs à des pages de votre site qui ne contiennent plus le contenu recherché.

    (Vous pouvez constater que cela se produit avec certains sites mal conçus qui permettent, par exemple, à Google d’analyser leurs listes "des articles les plus récents sur X". Dans la page des résultats de Google, l'extrait indique les mots clés que vous recherchez, mais lorsque vous cliquez réellement, le contenu que vous avez vu dans l'extrait n'est plus visible.)

Pour ces raisons, il est en fait souvent recommandé d'interdire délibérément aux moteurs de recherche externes tels que Google d'explorer les résultats de recherche de votre site à l'aide de robots.txt). , même s’ils pouvaient techniquement le faire. Par exemple, les pages d'aide des outils pour les webmasters de Google disent :

"Pensez à utiliser un fichier robots.txt pour bloquer l'accès de Googlebot aux URL problématiques. En règle générale, bloquez les URL dynamiques, telles que les URL générant des résultats de recherche ou les URL pouvant créer des espaces infinis, tels que des calendriers."

La seule exception concerne les ensembles de mots-clés (ou "catégories" ou "balises", comme ceux-ci ) relativement petits, qui associent des pages associées à des listes que les utilisateurs peuvent consulter. (Ici, "relativement petit" signifie un nombre fini, de préférence inférieur au nombre réel de pages de contenu sur votre site, par opposition à "tout ce qu'un utilisateur pourrait penser de rechercher".) Dans ce cas, vous pouvez inclure ces éléments. répertoriez les pages de votre sitemap (peut-être avec une priorité inférieure à celle de vos pages de contenu) afin que Google les recherche et les indexe également.

Vous devez également envisager d'ajouter des liens non AJAX à ces pages à partir de votre page d'accueil (et de toute autre page où ils pourraient être utiles) afin que même les utilisateurs avec JavaScript désactivé (ou non pris en charge par leur navigateur) puissent les trouver. Si l'utilisateur a activé JS, vous pouvez l'utiliser pour remplacer les liens par l'interface AJAX correspondante.

En fait, plus généralement, c’est une bonne idée de concevoir votre site de manière à ce qu’il fonctionne (autant que techniquement possible) même sans JavaScript. Cela rend non seulement votre site convivial pour les utilisateurs avec des navigateurs impairs (comme les utilisateurs aveugles utilisant un navigateur audio ou lynx avec un terminal Braille) ou qui surfent avec JS désactivé par défaut pour des raisons de sécurité ou de performances, mais cela le rend également automatiquement accessible aux moteurs de recherche, qui voient votre site un peu comme le ferait un utilisateur utilisant un navigateur sans texte avec JS.

4
Ilmari Karonen

Bien...

il s'agit d'une recherche de site dont vous parlez d'indexation ... et en tant que telle nécessiterait une interaction humaine pour générer/saisir des termes de recherche ...

Une fois Google indexé sur votre site, qu’il soit ajax ou html normal, votre site ne sera pas frappé de requêtes de recherche. Les URL que vous spécifiez dans les ancres/balises ne sont frappées que par les URL.

À cette fin, la seule façon de vous permettre d’obtenir Google pour indexer ces pages, ce serait de capturer les requêtes des utilisateurs, puis de les rendre dans votre balisage quelque part pour une éventuelle recherche par bots.

J'ai mis cela dans une réponse plutôt que dans un commentaire, car je pense que cela répond à la question, bien que ce ne soit pas très positif, je suppose.

Bonne chance...!

1
BizNuge