Problème indexation avec snapshot html. Fonctionne à moitié. Besoin d'aide !!

  • Auteur de la discussion Auteur de la discussion samail
  • Date de début Date de début
Nouveau WRInaute
Bonjour,

Je ai lu les FAQ et fouillé le centre d'aide, mais ne peux pas trouver la réponse à mon problème malheureusement. Peut être quelqu'un du forum aura une idée ou une piste ?

Nous avons une FAQ dynamique déployée sur un site comme un widget JavaScript grâce à un simple snippet de code afin de faciliter au maximum l'intégration sur le site client. Nous utilisons la méthode des snapshots html pour rendre l'ensemble crawlable et indexable par les moteurs de recherche notamment Google.

Voici un exemple de FAQ en ligne (liste de questions): http://www.1-2-3.fr/foire-aux-questions/
Voici la version que Google voit: http://www.1-2-3.fr/foire-aux-questions/?_escaped_fragment_=

Voici l'url d'une question détaillée: http://www.1-2-3.fr/foire-aux-questions/?question=12169-n-ai-recu-welcome-pack-diva-vip-faire-recevoir
Voici la version que Google voit: http://www.1-2-3.fr/foire-aux-questions/?_escaped_fragment_=&question=12169-n-ai-recu-welcome-pack-diva-vip-faire-recevoir

Comme nous pouvons l'observer, les deux snapshots HTML (liste et question détaillée) sont bien "rendus". Mais la question à laquelle je ne suis pas en mesure de répondre c'est le fait que je ne trouve pas les questions détaillées directement dans google alors que celles ci sont accessibles, crawlable et possèdent une URL dédiée ??

Recherche Google => "site:www.1-2-3.fr pack DIVA VIP"

Nous pouvons observer que la question relative se trouve bien sur la page d'accueil (liste de questions) de la FAQ (url: http://www.1-2-3.fr/foire-aux-questions/) ce qui est déjà bien, mais elle devrait également s'afficher en tant résultat direct de la recherche et ainsi pouvoir être ouverte directement par un clic comme une question détaillée ??
Après beaucoup de recherche, je ne comprends toujours pas pourquoi ce n'est pas le cas notamment parce que quand je fais un "Fetch as google" en suivant les liens, les snapshots sont bien affichés comme attendu pourtant l'url de la question ne ressort par sur la recherche.

Si quelqu'un a une idée sur ce qui peut être problématique et pourquoi google semble indéxer seule la liste de questions et non toutes les questions (avec url dédié) de facon unitaire, n'hésitez pas à revenir vers moi

Je reste disponible pour toute question ou information supplémentaire

Merci infiniment d'avance

Cordialement
Samy
 
Nouveau WRInaute
Merci beaucoup pour votre réponse.

Qu'entendez vous par "les contenus qui ne sont pas visibles sans clic" ?? Nous avons pourtant bien fait attention d'insérer des liens précisément pour que google puisse les suivre.

Dans l'attente de votre retour
Merci encore

Bien cordialement
 
WRInaute accro
Sur la première page, celle de la FAQ, les contenus ne sont pas visibles.
Sur les pages individuelles, il se peut que le contenu ne soit pas suffisamment important pour Google

Il se peut surtout que le robots.txt avec son

Disallow: /*?p=*& joue un rôle

testez vos urls dans GWT
 
WRInaute accro
ça c'est une url (une vrai toute bête) : -http://www.1-2-3.fr/foire-aux-questions/
ça c'est la même url avec un paramètre : -http://www.1-2-3.fr/foire-aux-questions/?question=11459-j-ai-oublie-passe-dois-je-faire-11459

Dans un premier temps au niveau crawl pas de souci les moteurs visitent les urls a paramètre mais au niveau indexation ils sont plus suspicieux. ça ne date pas d'hier, ça fait bientot 10 ans que le contenu issu d'url avec paramètres est pris avec des pincettes par google car avant la généralisation de la réécriture d'url il savait déjà que cela impliquait des sites dynamiques don le contenu pouvais potentiellement être pauvre a cause d'un simple changement de paramètre.
D’ailleurs au passage amuse toi a changer le chiffre a gauche et a droite et constate le résultat si tu veux te prendre du NSEO pandalisant c'est la bonne pratique ;-)

ça c'était pour le critère "historique"

Maintenant va sur la page de réponse -http://www.1-2-3.fr/foire-aux-questions/?question=11459-j-ai-oublie-passe-dois-je-faire-11459 et fait un Ctrl U pour voir la source. tu aura pris soins de copier un fragment de texte pour le chercher avec Ctrl F dans le code source (genre "création" sur cette page). Et là oh stupeur NADA ... Bref il me semble difficile pour un bot d'inventer le contenu qui n'y figure pas.

En pratique "st-content" (entre autre) est chargé via le domaine "smart-tribune.com" via la requête -http://www.smart-tribune.com/faq/data.php?callback=st_data&platform_id=615&callback=st_data&question=11459-j-ai-oublie-passe-dois-je-faire-11459&feedback_id=11459&initial=true&_=1420551725615 donc est totalement transparente pour le bot qui contrairement à la légende urbaine n’interprète pas le javascript pour avoir son contenu (il le fait mais pour d'autres choses).

Si j'abusais je relèverais le message promo de smart.... sur son accueil :

Toutes les données sont hébergées dans le cloud, ne vous souciez plus des problématiques techniques, ni de votre DSI.

afin de mettre l'accent sur l'ironie du problème :)

Pour se convaincre définitivement de l'absence de contenu tu peux consulter le cache GG en version texte d'une page de FAQ :
http://webcache.googleusercontent.com/search?q=cache:Fc3J5ctX4WgJ:www. ... fr&strip=1

Ou encore désactiver javascript dans ton navigateur ce qui donnera peu ou prou le même résultat.

Dernière touche historique, même après l'invention du design de fou du 21e siècle et après avoir glorifié Ajax en enterrant la techno flash au passage, qui n'a eu que ce qu'elle mérite, faire un site en javascript si on ne s'appelle pas Facebook ça reste dangereux et une mauvaise idée ;-) content is king ...

Bon après pour cette histoire de contenu invisible dont parle Marie Aude et auquel j'ai pensé tout de suite a la vue des accordéons je t'invite a lire le sujet suivant : https://www.webrankinfo.com/forum/google-indexe-plus-les-textes-invisibles- ... 77406.html

C'est relativement récent donc faut le savoir, même si je ne suis pas certains qu'on sois ici sur un effet de ce changement.

;-) bon courage.
 
Nouveau WRInaute
Merci pour vos réponses à tous les deux.

Je vais regarder du coté des urls avec paramètres. En effet nous avons la possibilité de transformer celles ci en clean urls (ex : http://www.1-2-3.fr/foire-aux-questions/?question=11459-j-ai-oublie-passe-dois-je-faire-11459 => http://www.1-2-3.fr/foire-aux-questions/question/11459-j-ai-oublie-passe-dois-je-faire-11459) peut être que cela va résoudre une partie du problème mais je pense que cela risque néanmoins d'être problématique en fonction des technos utilisées notamment avec le routeur d'url d'un framework par exemple.

Je n'avais pas identifié la règle de robots.txt comme problématique puisque la regex ne semble pas "matcher" avec notre format mais je vais également me pencher sur le sujet.

Concernant le fait que le contenu des pages est invisible c'est effectivement le cas car Google ne sait pas interpréter le JS c'est bien la raison pour laquelle on utilise les snapshots html grâce au param _escaped_fragment_= à la place de servir la véritable page qui ne contient pas le contenu à référencer la faute au JS.

Merci encore d'avoir pris de votre temps. Je ne manquerai pas de revenir vers vous avec plus d'info.

Bien cordialement
 
WRInaute impliqué
WRInaute accro
baud74 a dit:
nul part dans le html, seulement dans le javascript.
Nul part dans le html (au sens ou nous l'entendons), mais bien présent dans la page (au sens ou un crawler le comprend donc comme texte pur) sans avoir recours a un appel javascript supplémentaire pour le faire apparaitre.
Je n'ai pas dit que GG n'indexais pas javascript (il indexe bien les code erreurs alors javascript pourquoi pas) j'ai dit "n’interprète pas le javascript pour avoir son contenu" ;-) (au sens exécuter) Bref si le contenu dépend de l'execution d'une fonction côté client ça passera pas.

Au même titre GG est en mesure de détecter une url dans du javascript et de l'indexer le bougre (pour le moins de la crawler). J'ai des urls utilisées uniquement par des script Ajax qui ont été crawlé par exemple.

Bon après facebook c'est facebook, si GG ne prenait pas le temps de s'en inquiéter vue le poids du site ça serait inquiétant ... Je conseillerais pas a madame michu de faire de même si elle veux sortir sur GG.

Derniers point le poids de ce genre de contenu est très très faible et comme ton excellent exemple le montre faut sacrément triturer l'index pour le faire sortir.

C'est interessant ton exemple en tous cas faudrait qu'on creuse plus pour se faire une idée précise des domaines ou GG est en mesure d’exécuter JS.
 
WRInaute impliqué
un autre exemple, si tu recherches :
"La Berte (la Berthe) : Par les Mines d'Or" "Grand Bargy : Par le couloir des Ranges"
en laissant bien les "
tu obtiens un seul résultat.
les expressions recherchées ne sont nul part dans le html, ni dans les js externes.
le contenu est généré par de l'ajax. google a donc bien exécuté ce javascript, demandé le json au serveur et exécuté la fonction javascript d'affichage des données.
 
WRInaute impliqué
un autre exemple, j'ai eu une visite
sur la page -http://www.monbeauvillage.fr/74/74130/faucigny/google-map
avec le referer suivant
-https://www.google.fr/imgres?imgurl=http://mt1.googleapis.com/vt%3Fpb%3D!1m4!1m3!1i14!2i8483!3i5823!2m3!1e0!2sm!3i283000000!3m9!2sen-US!3sUS!5e18!12m1!1e47!12m3!1e37!2m1!1ssmartmaps!4e0!20m1!1b1&imgrefurl=http://www.monbeauvillage.fr
(tronqué par mon outil de suivi).

c'est donc une image du site -http://mt1.googleapis.com qui est sorti dans les résultats. cela veux dire, que google a demandé ma page, a exécuté le code javascript qui a affiché l'image issue de -http://mt1.googleapis.com dans la page.
un second exemple où c'est l'html généré par le javascript qui a été retenu au final par google.
 
WRInaute accro
C'est bluffant en effet surtout que l'url des datas n'est présente qu'au fin fond d'un javascript et que cette url ne semble même pas indexée.
Je persiste a penser en revanche que c'est une mauvaise pratique mais ça remet en question ce que je constate souvent en tous cas. Le format Json est peut être un facteur important dans cette histoire !?
 
WRInaute accro
hors sujet le Bargy c'est sympa j'ai grimpé la bas il y a un siècle ou deux j'aimais beaucoup la région.
 
WRInaute accro
baud74 a dit:
c'est donc une image du site -http://mt1.googleapis.com qui est sorti dans les résultats.....
C'est pour cela que je te demandais où étaient les datas, ça ne m'aurait pas surpris que GG face un cas particulier des datas qui lui sont confiées en les associant a des url utilisatrices.
 
Nouveau WRInaute
Merci pour vos exemples.

Par contre je remarque que ce sont à chaque fois des exemples en lien avec des services de Google que ca soit du google maps ou même googlesyndication pour le site http://randonnee.courir74.com/carte.php qui a été évoqué. Est ce que ce référencement du contenu généré par le JS ne serait pas favorisé de ce fait ?

Concernant la remarque sur les paramètres dans l'url la documentation de google sur le référencement du contenu AJAX semble bien valider que les paramètres sont acceptés sans problème particulier (https://developers.google.com/webmasters/ajax-crawling/docs/learn-more).

Nous avons mis en place la méthode recommandée par la documentation, celle des snapshot html (https://developers.google.com/webmasters/ajax-crawling/) avec de véritables liens pour que google puisse suivre ceux ci et continuer l'indexation des autres pages enfants mais cela ne semble pas fonctionner comme nous l’espérons.

Merci d'avance pour vos retours.
 
WRInaute accro
samail a dit:
Par contre je remarque que ce sont à chaque fois des exemples en lien avec des services de Google ...
C'est le point qui me titille aussi ...

samail a dit:
Nous avons mis en place la méthode recommandée par la documentation, celle des snapshot html (https://developers.google.com/webmasters/ajax-crawling/)
Méthode plébiscitée ici de mémoire mais personnellement je n'ai pas poussé le vice a regarder ton site sous cet angle pour en vérifier la conformité. De toi a moi je trouve le truc un zest compliqué pour le service rendu ;-) N'est il pas possible de générer un contenu inline simple plutôt que de passer par ajax pour afficher un contenu somme toute basique ? on a trop souvent tendance a vouloir piloter des jets alors qu'un petit avion ferait bien l'affaire ...
 
WRInaute accro
baud74 a dit:
nul part dans le html, ni dans les js externes.
En fait si mais a un niveau profond faut déduire l'url du JS principal qui elle conduit (après interprétation en effet) aux datas.
GG a deux options pour cela :
* simuler l’exécution du JS (ce don tous le monde parle)
* encapsuler la page dans un container pour observer les requêtes sortantes ... et déduire les urls (méthode que j'utiliserais si j'étais a sa place car beaucoup plus simple et permettant dans ton cas d'associer url des datas et paramètres calculés sans se prendre la tête)
 
Nouveau WRInaute
C'est "malheureusement" la seule méthode possible pour promettre une intégration extrêmement facile. En effet, il suffit d'insérer un script dans la page, celui ci s'occupe de générer la structure html de la FAQ ainsi que récupérer le contenu via une api et afficher celui ci. Nous ne pouvons intervenir sur le site client c'est donc la seule méthode valable pour proposer ce service.

Je pense que la piste des services google indexés est tangible et que le reste du contenu généré par du JS ne le sera pas et c'est pourquoi Google recommande la méthode des snapshots html, méthode utilisé par l'ensemble des sites en Ajax ou similaire.

Malheureusement je ne m'explique pas le fait que seul la page d'accueil est indéxé (grace au snapshot servi à GG) mais que les pages enfants, ayant elles aussi un snapshot dédié et bien servi à GG, ne le sont pas :-(
 
WRInaute accro
A ma dernière recherche tu avais deux pages en plus de l'accueil d'indexées. Le service est en place depuis longtemps ? c'est peut être juste une question de temps.
 
Nouveau WRInaute
Effectivement il a bien 2 sous pages indéxées ce que je ne m'explique pas vraiment. Je pense qu'il est possible que ces liens soient présent sur le site dans d'autres pages et ce serait la raison pour laquelle seul ces deux sont référencés. Cela fait deja plusieurs semaines que le service est en place et configuré correctement mais cela pourrait effectivement être une question de temps.

Je vais continuer de suivre l'évolution et ne manquerai pas de vous tenir informé de mes observations si cela peut servir à d'autres.

Merci encore pour vos commentaires
Je reste ouvert et à l'écoute de toute nouvelle suggestion

Bien cordialement
 
WRInaute accro
spout a dit:
méthode encore bcp plus facile, que j'avais déjà évoquée ici...
je me souviens en effet de ton allusion aux listeners posé en JS sur les liens des pages classiques qui constituent une surcouche javascript / ajax sur un site normal par ailleurs. L'approche est a mon avis la meilleure ....
 
Nouveau WRInaute
Merci pour cette proposition mais malheureusement je ne pense pas que celle ci puisse s'appliquer dans notre cas puisque l'on pourrait s'apparenter à un widget javascript intégré dans une page existante hors il me semble que la solution proposée ici serait valable pour un site où l'html est rendu normalement via PHP et les pages chargées en ajax ? Dans notre cas l'html est généré par le "widget JS" donc non visible par google à priori
 
Discussions similaires
Haut