Portrait Olivier Duffez

Olivier Duffez

Créateur de WebRankInfo,
consultant en référencement

Comment tirer profit du champ de recherche pour son site dans les SERP Google

Google l'avait fait pour quelques gros sites, c'est désormais accessible (en théorie) à tous les sites : pour une recherche dans Google portant sur votre site, un champ de recherche interne à votre site peut s'afficher dans les résultats de Google.

Publié le 05/09/2014, dernière mise à jour le 27/10/2014 : comment désactiver totalement cette Search Box

Le champ de recherche amélioré dans les résultats de recherche (Sitelinks Searchbox)

C'est plus simple à expliquer par une image...

Voici par exemple ce que ça donne avec la requête "webrankinfo" :

Rich Snippet SearchAction
Comment configurer son site pour bénéficier du Rich Snippet SearchAction (champ de recherche au-dessus des sitelinks, qui envoie l'internaute sur le moteur de recherche interne du site)

Voici également ce Sitelinks Search Box avec la requête "youtube", cette fois-ci sur mobile :

Recherche interne dans Google
Directement dans la page de résultats de Google, l'internaute peut parfois trouver un moteur de recherche interne pour affiner sa recherche d'informations sur un site en particulier. En anglais : improved sitelinks search box

Si l'internaute souhaite trouver autre chose sur le site de YouTube, avant même d'y aller, il lui suffit de taper sa requête dans le champ de recherche affiché entre le descriptif du site (snippet) et les liens supplémentaires (sitelinks).

Google avait déjà testé quelque chose de similaire, mais :

  • ce formulaire était affiché sous les sitelinks alors qu'il est maintenant bien plus visible, au-dessus
  • ça n'utilisait pas le moteur de recherche interne du site concerné, mais ça lançait une recherche Google supplémentaire avec la commande site: (qui restreint à un site donné)
  • ça ne concernait que quelques gros sites très populaires

Par ailleurs, cette nouvelle version de la recherche intra-site inclut désormais les suggestions automatiques de requêtes.

Comment configurer son site pour le rich snippet SearchAction ?

Voici comment bien gérer la nouvelle barre de recherche Google sous votre site dans les résultats de recherche :

  • Bien entendu, la première condition est de disposer d'un moteur de recherche interne (celui de Google peut suffire : Google Custom Search ou "CSE"). D'après la documentation de Google, il me semble qu'il est nécessaire que votre formulaire de recherche soit en méthode GET.
  • Il faut ensuite indiquer correctement à Google quel moteur de recherche interne il doit utiliser. Pour cela, il faut intégrer des données structurées dans votre page d'accueil, comme expliqué ici.
  • Enfin, il faut espérer que ce type de formulaire s'affiche pour votre site... En effet, un algorithme se charge de déterminer si cette fonctionnalité doit s'appliquer en fonction de la requête de l'internaute. Attention : ajouter le code sur votre page d'accueil ne permet pas automatiquement de bénéficier de l'affichage de ce formulaire au-dessus de vos sitelinks.

Si vous ne faites rien, Google ne pourra pas deviner où se trouve votre moteur de recherche. Dans ce cas, il relancera une recherche mais avec la commande site:. Par exemple, si l'internaute tape "youtube" puis "bill gates" dans le formulaire intégré au-dessus des sitelinks, si jamais le site YouTube ne définit pas où est son moteur interne, alors Google affichera à l'internaute une nouvelle page de résultats correspondant à la requête [bill gates site:youtube.com].

Cette nouvelle fonctionnalité est déployée dans le monde entier, active pour le site WebRankInfo (et de nombreux autres) depuis le 18/09/2014.

Que se passe-t-il sur un site qui n'a PAS mis les bons tags ?

Dans ce cas, Google affiche une nouvelle page de résultats de recherche, chez lui, constituée des mots-clés tapés par l'internaute et terminée par "site:example.com". Notez que Google n'utilise aucun sous-domaine, donc la recherche va porter sur tous vos sous-domaines, ce qui n'est pas toujours une très bonne idée.

Pour changer de l'exemple de ma vidéo ci-dessous, voici ce qui se passe avec le site AuFéminin :

Sans marquage SearchAction
Sans marquage de données structurées SearchAction sur le site, Google affiche une page de résultats incluant des publicités pour les concurrents...

Comme vous l'avez bien compris, le problème majeur est que l'internaute se retrouve sur une page potentiellement remplie de publicités AdWords très ciblées, pour des concurrents !

Conclusion : tant que les sites n'auront pas implémenté le bon marquage SearchAction, Google en profitera largement et gagnera (encore) un peu plus d'argent. Google adore les marques, vous savez pourquoi !

Que se passe-t-il sur un site qui a mis les bons tags ?

Ayant sous la main un site qui dispose de cet affichage de searchbox au-dessus des sitelinks, j'ai pu faire quelques tests. Voici ce qu'il en ressort :

  • les suggestions automatiques qui s'affichent au fur et à mesure que l'internaute tape dans ce search box sont effectivement propres au site concerné
  • par contre, ces suggestions semblent basées sur l'ensemble du site, quels que soient les sous-domaines. Par exemple dans mon cas, l'internaute est "pollué" par toutes les suggestions liées au forum
  • pour finir sur ces suggestions, je n'ai pas encore identifié comment Google les génère et si on peut configurer son site pour que Google utilise les nôtres
  • l'internaute qui arrive depuis le search box des sitelinks n'a pas de referrer. Ce n'est pas seulement l'absence de mots-clés (sa requête initiale, incluant a priori le nom du site), il n'y a pas du tout de referrer. A mon avis, la raison vient du fait que la page de SERP de Google est en HTTPS tandis que la page d'arrivée sur mon site est en HTTP (donc aucun referrer n'est transmis par le navigateur). Google n'a pas prévu de passer par une URL intermédiaire (en HTTP), comme c'est le cas pour les autres liens dans les SERPs (cf. explications sur le not provided de Google).
  • par contre, l'internaute arrive sur votre page de résultats de recherche interne avec comme mots-clés ceux qu'il a tapés dans le nouveau formulaire intégré au-dessus des sitelinks. Si jamais il a cliqué sur une suggestion de requête, c'est cette suggestion qui est transmise.

Tuto vidéo

Si vous préférez, consultez ma vidéo sur ce "rich snippet SearchAction" :

Zone de recherche Google Sitelinks : FAQ

Depuis quand cette Search Box est-elle présente dans les résultats Google ?

Depuis le 05/09/2014 sur google.com et depuis le 18/09/2014 ailleurs.

Est-ce possible de désactiver totalement cette Search Box ?

Oui c'est possible, il suffit d'ajouter la balise meta Google nositelinkssearchbox. Dans ce cas, le code SearchAction n'est plus nécessaire.

Concrètement, comment empêcher Google d'afficher un moteur de recherche sous mes sitelinks ?

Pour indiquer à Google que vous ne souhaitez pas qu'un formulaire de recherche s'affiche au-dessus des sitelinks pour votre site, ajoutez cette balise meta :

<meta name="google" content="nositelinkssearchbox">

Il suffit de la mettre dans votre page d'accueil, inutile de la mettre sur toutes vos pages.

Il faudra ensuite attendre que Google crawle à nouveau votre page, puis en tienne compte (cela devrait donc prendre quelques jours ou quelques semaines).

Dommage que Google ne propose pas de gérer cette option dans Google Webmaster Tools, ça serait utile à ceux qui ne peuvent pas ajouter une balise meta spécifique à leur page d'accueil. Et surtout, ça éviterait des problèmes lors des refontes, pendant lesquelles cette balise meta "no sitelinks searchbox" disparaîtra un jour ou l'autre...

Je pense aussi que certains vont se tromper en mettant "googlebot" au lieu de "google"...

Au fait, pourquoi est-ce au webmaster de s'opposer à cette fonctionnalité (opt-out) et pas le contraire (opt-in) ? Ou alors, plus largement, pourquoi Google se permet-il d'afficher des AdWords pour des requêtes avec l'opérateur site: ? (oui, je sais pourquoi mais je trouve ça lamentable, Google gagne assez d'argent pour ne pas avoir besoin d'utiliser ce genre de moyens détournés).

Comment éviter d'avoir des publicités AdSense dans Google Custom Search ?

La version gratuite du moteur de recherche interne personnalisé Google CSE affiche des publicités AdSense au-dessus de vos résultats internes. Pour ne pas en avoir, il faut passer à la version payante (à partir de 100$/an)... ou bien utiliser un autre moteur de recherche interne, par exemple celui de votre CMS.

Comment intégrer le code SearchAction sur WordPress ?

Ajoutez le bout de code JSON-LD juste avant </head> dans votre fichier wp-content/header.php. Etant donné qu'il n'est utile que pour la page d'accueil, vous pouvez utiliser la fonction de test is_home(). En supposant que votre URL de résultats de recherche interne est http://www.example.com/recherche?s=test (donc le paramètre est ici s), ça pourrait donner quelque chose comme ça :

<?php wp_head(); ?>
<?php if ( is_home() || is_front_page() ) : ?>
  <script type="application/ld+json">
  {
   "@context : "http://schema.org",
   "@type : "WebSite",
   "url : "https://www.example.com/",
   "potentialAction : {
     "@type : "SearchAction",
     "target : "http://www.example.com/recherche?s={search_term}",
     "query-input : "required name=search_term"
    }
  }
  </script>
<?php endif; ?>
</head>

Si vous souhaitez que cela fonctionne pour tous vos thèmes, il faudrait plutôt transférer ce code dans un plugin.

Si vous utilisez le plugin WordPress SEO de Yoast, sachez qu'il intègre désormais ce bout de code automatiquement.

Ce code SearchAction est-il compatible avec les autres données structurées schema.org ?

Oui, vous pouvez sans problème combiner ce code avec vos données structurées de type schema.org/Person, schema.org/Event, etc.

Ce code SearchAction est-il obligatoire pour bénéficier de ce champ de recherche dans les SERP ?

Non, il n'est pas obligatoire. Sachez d'ailleurs que c'est un algorithme qui identifie si pour une requête, votre site doit bénéficier ou pas de l'affichage de ce champ de recherche au-dessus des sitelinks. Avoir le code SearchAction sur votre site n'influence pas cet algorithme.

Peut-on intégrer ce code directement dans notre formulaire de recherche interne ?

Non ce n'est pas possible et ce n'est pas l'idée. Il faut simplement indiquer à Google comment accéder à une page de résultats de recherche interne.

Ce code SearchAction permet-il de retrouver les mots-clés cachés par not provided ?

Oui et non !

Depuis 2013, Google ne fournit plus aux sites web les mots tapés par l'internaute dans sa recherche. Dans l'outil Google Analytics, ils sont remplacés par (not provided). Dans le cas présent, quand l'internaute tape une recherche non pas dans le formulaire standard de Google, mais dans le nouveau champ de recherche au-dessus des sitelinks, voici ce qui se passe :

  • l'internaute était sur une URL en HTTPS de résultats de recherche Google, incluant les termes de la recherche (dans le paramètre q).
  • il saisit a priori d'autres termes dans le search box au-dessus des sitelinks
  • il valide ce formulaire et se retrouve directement sur l'URL de résultats de recherche interne sur votre site : celle que vous avez indiquée dans votre code SearchAction
  • si votre URL est en HTTPS, il est possible que vous puissiez récupérer le referrer et donc la requête initiale de l'internaute (concernant a priori le nom de votre site, qui a déclenché l'affichage des sitelinks)
  • si votre URL est en HTTP, vous n'avez strictement aucun referrer, donc pas les mots-clés de la requête initiale. Mais vous avez évidemment les mots de la requête tapée dans le second formulaire, celle-ci étant bien plus intéressante.

Cet article vous a-t-il plu ?

Cliquez pour voter !

Laisser un commentaire

Remarques :

  • Si vous souhaitez poser une question ou détailler un problème technique, il ne faut pas utiliser le formulaire ci-dessous qui est réservé aux avis. Posez votre question directement dans le forum Gmail de WebRankInfo. L'inscription est gratuite et immédiate.

  • En postant un avis, vous acceptez les CGU du site WebRankInfo. Si votre avis ne respecte pas ces règles, il pourra être refusé. Si vous indiquez votre adresse email, vous serez informé dès que votre avis aura été validé (ou refusé...) ; votre adresse ne sera pas utilisée pour vous envoyer des mailings et ne sera pas revendue ou cédée à des tiers.

39 commentaires

Dge-06

@olivier, pas tout le monde ne sait coder. De plus il y a des sites hébergés sur WP donc pas accès aux fichiers sources pour ajouter ces lignes.

Et oui, c'est déjà rempli automatiquement, mais j'ai préféré laisser les utilisateurs avoir la main dessus pour le modifier à leurs guise ;)

Répondre
Olivier Duffez

@Dge-06 : tout ça pour ajouter ce code ? d'ailleurs, les champs pourraient être remplis automatiquement surtout sur un WordPress.
Pour info, Yoast SEO ajoute déjà ce code.

Répondre
lea

merci pour la précision,
des idées sur les critères de decisions de l'algo ?

Répondre
lea

bonjour
j'ai installer le code il y a un mois environ, je le retrouve dans le cache de google, mais google n'affiche toujour pas de search box quand on clique abel franklin.
auriez vous une explication ?

Répondre
Olivier Duffez

@lea : je l'ai expliqué dans l'article "ajouter le code sur votre page d'accueil ne permet pas automatiquement de bénéficier de l'affichage de ce formulaire au-dessus de vos sitelinks". Le code à insérer sur la page d'accueil sert à bien configurer le fonctionnement du moteur de recherche sous les sitelinks, SI Google décide de l'afficher. L'algo de Google évalue si ça vaut le coup ou pas d'afficher ce formulaire, que le code soit inséré ou pas dans la page d'accueil ne change rien à cette évaluation.

Répondre
Cedric

Bonjour,

J'ai mis en place tout ce qu'il faut sur mon site cycles-darnanville.com ....

- CANONICAL
- le script javascript /ld
- le moteur de recherche ....

bref, le moteur de ne met toujours pas sur google.
Quelqu'un pourrait-il m'éclairer sur quelque chose que j'aurais mal fait ? ou autre ?

Cordialement, Cédric

Répondre
Olivier Duffez

Cédric, c'est l'algo de Google qui détermine si ça vaut le coup ou pas d'afficher ce moteur de recherche intrasite, ça ne dépend pas de l'implémentation sur le site

Répondre
lolilto

Décidément, j'ai du mal...

le moteur de recherche était en "post", maintenant il est en "get" et j'ai bien le formulaire "Rechercher" sur les SERPs. Je te remercie Olivier :)

Répondre
Lolito

Tout à fait, le formulaire de recherche est en mode get, en tapant une requête l'URL ne change pas, on reste sur l'url nomdedomaine.com/search/

Je vais demander au développeur de mettre le mdr en méthod post je posterai un message quand ça sera Ok.

En tout cas merci pour ces infos.
Bonne journée

Répondre
Olivier Duffez

@Lolito : je suppose que c'est le contraire, car s'il est en GET actuellement, ça devrait marcher. Et s'il passe en POST, ça ne pourra pas marcher...

Répondre
Lolito

Merci Olivier pour ces éléments, malheureusement dans un soucis de confidentialité je ne peux indiquer le nom de mon client ici.

Répondre
Olivier Duffez

Pas de pb, je comprends. Donc en résumé, il a bien le sitelinks searchbox, il a bien mis le code json-ld dans sa page d'accueil, il a bien un moteur de recherche interne en méthode GET ?

Répondre
Lolito

Merci Olivier pour ta réponse rapide , mais je crois que je n'est pas été assez précis.

Actuellement le formulaire s'affiche sur les SERPs mais il y a écrit "Résultats" au lieu de "Rechercher". Donc si j'ai bien compris le script permet juste d’indiquer à Google de rediriger sur le moteur de recherche interne après avoir rempli le formulaire.

Soit ça vient du robots.txt qui à Disallow le /search soit ça vient du fait qu'il est en méthode post

Répondre
Olivier Duffez

@Lolito : si le formulaire est en POST, c'est incompatible... c'est quel nom de domaine ?

Répondre
Lolito

Bonjour et merci pour cet article,

J'ai bien intégré le script sur ma page d'accueil, mais je n'ai toujours pas "Rechercher" sur Google, quand on tape le nom de mon site. Est ce que cela vient du fait que le moteur de recherche est en méthode Post ? Ou on ne voit pas la requête dans l'URL on reste sur /search/. Ou alors ça vient du robots.txt avec qui j'ai désactivé le crawl de la recherche ?

Merci d'avance

Répondre
Olivier Duffez

@Lolito : relis mon article ;-) ce n'est pas parce qu'on met le script dans notre site que Google affiche ce formulaire : c'est un algo qui décide s'il l'affiche ou pas

Répondre
Akta

Bonjour,

J'ai des difficultés à intégrer le formulaire et de le rendre accessible par la method GET.
Est ce qu'il y a une manipulation particulière à faire ou alors c'est automatique?

Mes urls sont ré-écrites est ce que ça peut venir de là ?

Ex : si je fais : monsite.com?q=marecherche Le champ de recherche ne se remplit pas avec "marecherche".
Est ce que si ça, ça ne fonctionne pas, est ce que google pourra quand même essayé de l'intégré ?

Je vous remercie,

Cordialement,

Répondre
Olivier Duffez

si le formulaire ne s'affiche pas encore dans les SERP, configurer le site ne changera rien, on est d'accord ?
il faut fournir une URL de résultats de recherche, ça doit pouvoir se faire malgré l'utilisation d'URL "réécrites"
si on avait l'URL du site, ça serait plus facile de répondre ;-)

Répondre
chloe

Merci Olivier pour votre réponse. Le seul problème c'est que nous n'avons pas de moteur de recherche interne sur notre site (à part pour notre blog), il nous faudra donc en déployer un.

Répondre
chloe

Le champ de recherche s'active pour mon site et lance une recherche "mot clé tapé + site:example.com" alors que je n'ai pas fais de configuration particulière, savez vous s'il est possible de désactiver l'affichage de ce champ de recherche ? et si oui, que faut il faire ?

Répondre
Olivier Duffez

@ chloe : je n'ai pas trouvé l'info donc je pense qu'il est impossible de désactiver cet affichage de ce champ de recherche. Donc s'il s'affiche pour votre site, il faut absolument ajouter (sur la page d'accueil) le code que j'ai indiqué dans cet article.

Répondre
dmerchie

En combien de temps peut on espérer que google prenne en compte l'ajout de ce bout de code dans nos sites ?

Répondre
Olivier Duffez

@ dmerchie : je dirais entre quelques jours à 10 jours

Répondre
Anthony

Autant pour moi, vu la méthode je voyais ça en post avec une sorte de redirection.
En tout cas merci de prendre de votre temps pour nous répondre.
De plus la recherche est en NoIndex donc cela montre bien qu'il n'y a aucun impact sur l'affichage du champ de recherche. Ça me rassure.

Répondre
Olivier Duffez

la recherche est en NoIndex donc cela montre bien qu'il n'y a aucun impact sur l'affichage du champ de recherche

je crois que ce n'est pas encore assez clair pour vous...
le fait que Google décide d'afficher ce formulaire dans les SERP n'a AUCUN rapport avec la façon dont fonctionne le moteur de recherche interne du site, et AUCUN rapport non plus avec l'intégration ou l'absence du code SearchAction.

si jamais Google décide d'afficher ce formulaire dans les SERP, alors il est largement recommandé d'avoir un moteur de recherche interne en méthode GET et d'ajouter le code dans la page d'accueil

Répondre
Anthony

Merci encore des infos.
Par contre pour l'affichage du moteur sur google.
Il est possible de l'avoir même avec un moteur interne en post simulant une methode GET.

Exemple : jeuxvideo.com, leader dans ce domaine d'ailleurs.
En faisant un recherche interne sur le site il y a un traitement de la saisi et même de l'url rewriting.

Répondre
Olivier Duffez

@Anthony : ce n'est pas le meilleur exemple car
1- ils n'ont pas encore mis le code nécessaire
2- ils utilisent un formulaire en GET :
<form id="rech" action="http://www.jeuxvideo.com/cgi-bin/rech_new.cgi" accept-charset="utf-8" method="get" onsubmit="return valid_recherche(this);">

Répondre
Anthony

@Olivier, merci pour les infos

Petite question :
Le fait de mettre la page de recherche interne en no-index ne va pas empêcher l'affichage de ce champs de recherche?

Répondre
Olivier Duffez

Non Anthony, aucun souci je pense

Répondre
Vincent

Moui mais j'ai regardé le code source du "mauvais" exemple donné, à savoir le site AuFéminin...
Je ne vois pas d'où provient l'erreur, ni ce qui est mal paramétré... J'ai su louper un truc...

Répondre
Olivier Duffez

@Vincent : AuFéminin a ajouté ce bout de code après la publication de mon article. Il faut attendre que Google en tienne compte, ce qui n'est pas le cas en ce moment.

Répondre
Anthony

Bonjour,

Le fait d'utiliser ce script ne rentre t-il pas en conflit si on utilise déjà les données structurées du genre itemscope itemtype="http://schema.org/Person ?

Ce code n'existe que sous forme de script ou existe t-il une version du code ou on rajoute les attribut directement sur le champ de recherche?

Répondre
Olivier Duffez

@ Anthony : j'ai mis à jour mon article avec une FAQ qui répond à ces questions

Répondre
Olivier Duffez

Eric, les données structurées ne servent pas à déclencher l'affichage du formulaire de recherche dans les SERP ! Elles servent à éviter que Google utilise la commande site:

Répondre
Frédéric

Comment savoir si notre site est concerné ? Cela dépend de la requète initiale donc pas forcément visible à ou les coup non ?

Répondre
Alexterieur

J'ai l'impression que Google nous force quand même pas mal à l'installer cette petite fonctionnalité... Si on ne met pas le code, on risque de perdre de potentiels visiteurs, qui eux restent sur Google et cliqueront peut-être même sur les Ads.

Si on le met, je me demande où vont les données ? Le mot-clé tapé par l'utilisateur sera-t-il répertorié sur Webmaster Tools par exemple ? Cela fera-t-il baissé les données de recherches internes si on a déjà un outils de tracking en place ?

Répondre
Dge-06

Très intéressant.

Je viens de mettre le script en place sur mon site, et j'ai demandé à Google de re-indexer mon site.

On verra d'ici quelques jours si c'est pris en compte pour mon site ou pas.

Répondre