Mettre en avant les témoignages pour le SEO local avec Schema.org

Mathieu Chartier SEO 0 commentaire

Google a annoncé sur son blog officiel le 12 août 2016 la possibilité d'administrer l'affichage des critiques de clients pour les business locaux grâce à Schema.org. Un an après (4 août 2015) avoir lancé l'affichage des "critic reviews" (témoignages / critiques) dans le Knowledge Graph, Google permet désormais aux développeurs et intégrateurs web de gérer les avis qu'ils souhaitent afficher.

Il était déjà possible de marquer des témoignages grâce aux données structurées mais dorénavant, davantage de formats sont disponibles et il est surtout possible de choisir les extraits à afficher dans le Knowledge Graph. Ainsi, les business locaux peuvent mettre en avant les meilleurs avis pour tenter de convaincre d'autres prospects de passer à l'action. L'affichage des témoignages critiques et des suggestions de business est tout récent dans les SERP, puisqu'il date uniquement du 4 août 2016. Il ne manquait donc plus que de nouveaux marqueurs sémantiques pour finaliser l'usage de cette fonctionnalité intéressante.

Voici deux exemples de rendu sur ordinateur et mobile pour les "critic reviews" dans les SERP de Google. Tout d'abord pour ordinateur :

Témoignages de clients dans le Knowledge Graph et les SERP de Google

Et sur mobile :Témoignages de clients dans le Knowledge Graph et les SERP mobiles de Google

Techniquement, les marqueurs de données pour les critiques clients sont disponibles avec les microdonnées Schema.org classiques (HTML) ou au format JSON (souvent recommandé et plus pratique à mettre en oeuvre). Tout est expliqué dans la documentation. Pour donner quelques informations génériques sur le format, retenez surtout que vous devez mettre en place :

  • La propriété "itemreviewed" est obligatoire et constitue une liste de couples sous-propriétés/sous-valeurs (format JSON). Il s'agit de l'item principal pour intégrer les critiques externes.
  • Les sous-propriétés obligatoires pour chaque type parent (local business, movie ou book). Par exemple, il faut absolument la propriété "name" dans "itemreviewed" pour les business locaux, les films ou les livres. En revanche, la propriété "isbn" n'est logiquement imposée que pour les livres, etc. Surveillez donc la documentation qui indique bien quels sont les données à indiquer et celles recommandées.
  • Les propriétés autres qui doivent accompagner obligatoirement les critiques externes. Par exemple, il est imposé de décrire un éditeur de contenu ("publisher"), d'ajouter une date de publication ("datePublished") ou encore de fournir une description ("description").

Voici un exemple simple et raccourci pour vous donner une idée du rendu final en JSON-LD :

<script type="application/ld+json">
{
  "@context":"http://schema.org",
  "@type":"Review",
  "author": {
    "@type":"Person",
    "name":"Mathieu Chartier",
    "sameAs":"https://plus.google.com/+MathieuChartierSEO"
  },
  "url": "http://www.avis-critiques.com/restaurants/au-fin-gourmet.html",
  "datePublished":"2016-08-13T20:00",
  "publisher": {
      "@type":"Organization",
      "name":"Blog Internet-Formation",
      "sameAs":"https://blog.internet-formation.fr"
  },
  "description":"Super blog avec de nombreux articles SEO, techniques et webmarketing à lire !",
  "inLanguage":"fr",
  "itemReviewed": {
    "@type":"Restaurant",
    "name": "Au fin gourmet",
    "sameAs": "http://www.au-fin-gourmet.com",
    "image": "http://www.au-fin-gourmet.com/logo.jpg",
    "servesCuisine": "Cuisine fine gastronomique",
    "priceRange": "€€€",
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "1 rue de la République",
      "addressLocality": "Limoges",
      "addressRegion": "Nouvelle Aquitaine",
      "postalCode": "87000",
      "addressCountry": "FR"
    },
    "aggregateRating": {
      "@type": "AggregateRating",
      "ratingValue": "88",
      "bestRating": "100",
      "ratingCount": "20"
    }
  },
  "reviewRating": {
     "@type":"Rating",
     "worstRating":1,
     "bestRating":4,
     "ratingValue":3.5
  }
}
</script>