Q&A

Les pages de question/réponse(s) sont des pages Web contenant des données sous la forme d'une question suivie de ses réponses. Pour les contenus qui représentent une question et ses réponses, vous pouvez baliser vos données avec les types schema.org QAPage, Question et Answer.

Les pages correctement balisées peuvent s'afficher en tant que résultat enrichi dans les résultats de recherche. Cette fonctionnalité spéciale aide votre site à attirer les internautes les plus appropriés via la recherche Google. Voici un exemple de résultat possible pour la requête utilisateur "Comment retirer un câble coincé dans un port USB ?" si la page a été balisée pour répondre à cette question :

Exemple dans les résultats de recherche d'une fiche de question-réponses pour la requête

En plus de permettre à votre contenu d'apparaître en tant que résultat enrichi comme illustré ci-dessus, le balisage de votre page de question/réponse(s) aide Google à générer un extrait plus pertinent pour votre page. Dans l'exemple ci-dessus, le contenu des réponses peut s'afficher dans le résultat de base si le résultat enrichi n'apparaît pas.

Comment ajouter des données structurées

Ces données structurées représentent un format normalisé permettant de fournir des informations sur une page et de classer son contenu. En savoir plus sur le fonctionnement des données structurées

Voici, dans les grandes lignes, comment créer, tester et publier des données structurées. Pour consulter un guide détaillé sur l'ajout de données structurées à une page Web, accédez à cet atelier de programmation.

  1. Ajoutez les propriétés obligatoires. Pour déterminer où placer les données structurées sur la page, regardez Données structurées JSON-LD : où les insérer sur la page.
  2. Suivez les consignes.
  3. Validez votre code à l'aide du test des résultats enrichis.
  4. Déployez quelques pages où figurent vos données structurées et utilisez l'outil d'inspection d'URL pour découvrir comment Google voit la page. Assurez-vous que Google peut accéder à votre page et qu'elle n'est pas bloquée par un fichier robots.txt, la balise noindex ni par des identifiants de connexion. Si tout semble être en ordre, vous pouvez demander à Google d'explorer de nouveau vos URL.
  5. Pour informer Google des modifications futures de vos pages, nous vous recommandons de nous envoyer un sitemap. Vous pouvez automatiser cette opération à l'aide de l'API Sitemap de la Search Console.

Exemples

L'exemple de balisage suivant inclut les définitions de type QAPage, Question et Answer au format JSON-LD :

JSON-LD

<html>
  <head>
    <title>How many ounces are there in a pound?</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "QAPage",
      "mainEntity": {
        "@type": "Question",
        "name": "How many ounces are there in a pound?",
        "text": "I have taken up a new interest in baking and keep running across directions in ounces and pounds. I have to translate between them and was wondering how many ounces are in a pound?",
        "answerCount": 3,
        "upvoteCount": 26,
        "dateCreated": "2016-07-23T21:11Z",
        "author": {
          "@type": "Person",
          "name": "New Baking User"
        },
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "1 pound (lb) is equal to 16 ounces (oz).",
          "dateCreated": "2016-11-02T21:11Z",
          "upvoteCount": 1337,
          "url": "https://example.com/question1#acceptedAnswer",
          "author": {
            "@type": "Person",
            "name": "SomeUser"
          }
        },
        "suggestedAnswer": [
          {
            "@type": "Answer",
            "text": "Are you looking for ounces or fluid ounces? If you are looking for fluid ounces there are 15.34 fluid ounces in a pound of water.",
            "dateCreated": "2016-11-02T21:11Z",
            "upvoteCount": 42,
            "url": "https://example.com/question1#suggestedAnswer1",
            "author": {
              "@type": "Person",
              "name": "AnotherUser"
            }
          }, {
            "@type": "Answer",
            "text": " I can't remember exactly, but I think 18 ounces in a lb. You might want to double check that.",
            "dateCreated": "2016-11-06T21:11Z",
            "upvoteCount": 0,
            "url": "https://example.com/question1#suggestedAnswer2",
            "author": {
              "@type": "Person",
              "name": "ConfusedUser"
            }
          }
        ]
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>
Microdonnées

<html>
<body itemscope itemtype="https://schema.org/QAPage">
<div itemprop="mainEntity" itemscope itemtype="https://schema.org/Question">
   <h2 itemprop="name">How many ounces are there in a pound?</h2>
   <div itemprop="upvoteCount">52</div>
   <div itemprop="text">I have taken up a new interest in baking and keep running across directions in ounces and pounds. I have to translate between them and was wondering how many ounces are in a pound?</div>
   <div>asked <time itemprop="dateCreated" datetime="2010-11-04T20:07Z">Nov 11
'10 at 20:07</time></div>
<div itemprop="author" itemscope itemtype="https://schema.org/Person"><span
itemprop="name">New Baking User</span></div>
<div>
    <div><span itemprop="answerCount">3</span> answers</div>
    <div><span itemprop="upvoteCount">26</span> votes</div>
    <div itemprop="acceptedAnswer" itemscope itemtype="https://schema.org/Answer">
       <div itemprop="upvoteCount">1337</div>
       <div itemprop="text">
       1 pound (lb) is equal to 16 ounces (oz).
       </div>
      <a itemprop="url" href="https://example.com/question1#acceptedAnswer">Answer Link</a>
      <div>answered <time itemprop="dateCreated" datetime="2010-12-01T22:01Z">Dec 1 '10 at 22:01</time></div>
      <div itemprop="author" itemscope itemtype="https://schema.org/Person"><span itemprop="name">SomeUser</span></div>
      </div>
    <div itemprop="suggestedAnswer" itemscope itemtype="https://schema.org/Answer">
       <div itemprop="upvoteCount">42</div>
       <div itemprop="text">
       Are you looking for ounces or fluid ounces? If you are looking for fluid ounces there are 15.34 fluid ounces in a pound of water.
       </div>
       <a itemprop="url" href="https://example.com/question1#suggestedAnswer1">Answer Link</a>
       <div>answered <time itemprop="dateCreated"datetime="2010-12-06T21:11Z">Dec 6 '10 at 21:11</time></div>
       <div itemprop="author" itemscope itemtype="https://schema.org/Person"><span
itemprop="name">AnotherUser</span></div>
     </div>
     <div itemprop="suggestedAnswer" itemscope itemtype="https://schema.org/Answer">
       <div itemprop="upvoteCount">0</div>
       <div itemprop="text">
       I can't remember exactly, but I think 18 ounces in a lb. You might want to double check that.
       </div>
       <a itemprop="url" href="https://example.com/question1#suggestedAnswer2">Answer Link</a>
       <div>answered <time itemprop="dateCreated"datetime="2010-12-06T21:11Z">Dec 6 '10 at 21:11</time></div>
       <div itemprop="author" itemscope itemtype="https://schema.org/Person"><span
itemprop="name">ConfusedUser</span></div>
    </div>
</div>
</div>
</body>
</html>

Consignes

Pour que votre page de question/réponse(s) puisse apparaître en tant que résultat enrichi, vous devez suivre ces consignes :

Consignes relatives au contenu

  • Utilisez le balisage QAPage si votre page contient des informations sous forme de questions et réponses, c'est-à-dire si elle comporte une question suivie de ses réponses.
  • Les utilisateurs doivent pouvoir soumettre des réponses à la question. N'utilisez pas le balisage QAPage pour le contenu qui ne propose qu'une réponse pour une question donnée, sans aucun moyen pour les utilisateurs d'ajouter d'autres réponses. Utilisez FAQPage à la place. Vous trouverez quelques exemples ci-dessous.

    Cas d'utilisation valides :

    • Page de forum où les utilisateurs peuvent soumettre des réponses à une seule question
    • Page de support produit où les utilisateurs peuvent soumettre des réponses à une seule question

    Cas d'utilisation non valides :

    • FAQ écrite par le site lui-même sans aucun moyen pour les utilisateurs de soumettre d'autres réponses
    • Page de produit où les utilisateurs peuvent soumettre plusieurs questions et réponses sur une seule page
    • Guide pratique répondant à une question
    • Article de blog répondant à une question
    • Essai répondant à une question
  • N'appliquez pas de balisage QAPage sur toutes les pages d'un site ou d'un forum si tout le contenu n'est pas éligible. Par exemple, un forum peut avoir de nombreuses questions qui sont chacune éligibles à ce balisage. Toutefois, si le forum contient également des pages qui ne sont pas des questions, vous ne pouvez pas leur appliquer ce balisage.
  • N'utilisez pas le balisage QAPage pour les pages de type FAQ ou les pages comportant plusieurs questions. Le balisage QAPage est destiné aux pages se concentrant sur une seule question et ses réponses.
  • N'utilisez pas le balisage QAPage à des fins publicitaires.
  • Assurez-vous que chaque propriété Question comprend le texte intégral de la question et que chaque propriété Answer inclut le texte intégral de la réponse.
  • Le balisage Answer est destiné aux réponses à la question, et non aux commentaires sur la question ou sur les autres réponses. En d'autres termes, n'utilisez pas le balisage Answer pour les commentaires ne fournissant pas de réponse.
  • Le contenu des pages de questions fréquentes peut ne pas s'afficher en tant que résultat enrichi s'il contient l'un des types de contenu suivants : contenu obscène, grossier ou sexuellement explicite, images violentes, promotion d'activités dangereuses ou illégales, propos haineux ou offensants.

Définitions des types de données structurées

Cette section décrit les types de données structurées liés à la propriété QAPage.

Vous devez inclure les propriétés obligatoires pour que votre contenu puisse être affiché sous forme de résultat enrichi. Vous pouvez également inclure les propriétés recommandées pour ajouter d'autres informations à vos données structurées et ainsi offrir une meilleure expérience utilisateur.

Vous pouvez utiliser l'outil de test des résultats enrichis de Google pour valider et prévisualiser vos données structurées.

QAPage

Le type QAPage indique que la page est axée sur une question spécifique et sa ou ses réponses. Nous n'utilisons que les données structurées Question provenant de pages associées à un balisage QAPage. Il ne doit y avoir qu'une seule définition de type QAPage par page.

La définition complète de la propriété QAPage est disponible sur https://schema.org/QAPage.

Le tableau suivant décrit les propriétés de type QAPage utilisées par la recherche Google.

Propriétés obligatoires

mainEntity

Question

La propriété Question de cette page doit être imbriquée dans la propriété mainEntity de l'élément QAPage.

Question

Le type Question définit la question à laquelle cette page répond et inclut les réponses éventuelles à cette question. Un seul type Question est attendu sur la page, imbriqué sous la propriété mainEntity de schema.org/QAPage. Il ne doit y avoir qu'une seule définition de type Question par page.

La définition complète de la propriété Question est disponible sur https://schema.org/Question.

Propriétés obligatoires

answerCount

Integer

Nombre total de réponses à la question. Par exemple, s'il y a 15 réponses, mais que seules les 10 premières sont balisées à cause de la pagination, cette valeur indiquera 15. Elle peut également indiquer 0 pour les questions sans réponses.

acceptedAnswer ou suggestedAnswer Answer

Pour être éligible à l'affichage en tant que résultat enrichi, une question doit avoir au moins une réponse, à savoir une réponse de type acceptedAnswer ou suggestedAnswer. Cependant, les questions peuvent ne pas avoir de réponses lorsqu'elles viennent d'être publiées. Pour les questions sans réponses, spécifiez 0 pour la propriété answerCount. Les questions sans réponses ne sont pas éligibles à l'affichage en tant que résultat enrichi.

acceptedAnswer

Answer

Réponse principale à la question. Il peut y en avoir zéro ou plusieurs pour chaque question. Cette propriété doit représenter les réponses acceptées d'une manière spécifique sur votre site. Il peut s'agir d'une réponse approuvée par le demandeur, par un modérateur ou par un système de vote. Les autres formes de tri des réponses, telles que celles signalant les réponses les plus récentes, ne peuvent pas être utilisées pour identifier les réponses principales.

suggestedAnswer

Answer

Il s'agit d'une réponse possible, mais non acceptée en tant que réponse principale (acceptedAnswer). Il peut y en avoir zéro ou plusieurs pour chaque question.

name

Text

Texte complet de la forme abrégée de la question. Par exemple, "Combien de cuillères à thé compte une tasse ?".

Propriétés recommandées

author

Person ou Organization

Auteur de la question.

dateCreated

Date ou DateTime

Date à laquelle la question a été ajoutée à la page, au format ISO-8601.

text

Text

Texte complet de la forme longue de la question. Par exemple, "Je suis en train de cuisiner et j'aimerais savoir à combien de cuillères à thé correspond une tasse. Combien de cuillères à thé compte 1 tasse ?

upvoteCount

Integer

Nombre total de votes que cette question a reçus. Si la page accepte à la fois les votes négatifs et positifs, définissez une valeur globale unique représentant à la fois les votes positifs et négatifs pour upvoteCount. Par exemple, s'il existe 5 votes positifs et 2 votes négatifs, la valeur globale utilisée pour upvoteCount équivaudra à 3. S'il existe 5 votes positifs et que les votes négatifs ne sont pas pris en compte, la valeur upvoteCount correspondra à 5.

Answer

Le type Answer définit les réponses suggérées et acceptées pour l'élément Question de cette page. Définissez Answers Question en tant que valeurs pour les propriétés suggestedAnswer et acceptedAnswer.

Le tableau suivant décrit les propriétés du type Answer utilisé dans une Question.

La définition complète de la propriété Answer est disponible sur https://schema.org/Answer.

Propriétés obligatoires

text

Text

Texte complet de la réponse. Si seule une partie est balisée, votre contenu peut ne pas s'afficher, et Google ne sera pas en mesure de déterminer le meilleur texte à afficher.

Propriétés recommandées

author

Person ou Organization

Auteur de la réponse.

dateCreated

Date ou DateTime

Date à laquelle la réponse a été ajoutée à la page, au format ISO-8601.

upvoteCount

Integer

Nombre total de votes que cette réponse a reçus. Si la page accepte à la fois les votes négatifs et positifs, définissez une valeur globale unique représentant à la fois les votes positifs et négatifs pour upvoteCount. Par exemple, s'il existe 5 votes positifs et 2 votes négatifs, la valeur globale utilisée pour upvoteCount équivaudra à 3. S'il existe 5 votes positifs et que les votes négatifs ne sont pas pris en compte, la valeur upvoteCount correspondra à 5.

url

URL

URL qui renvoie directement à cette réponse. Par exemple : https://www.examplesite.com/question#answer1

Suivre les résultats enrichis avec la Search Console

La Search Console est un outil qui vous permet de suivre les performances de vos pages dans la recherche Google. Il n'est pas nécessaire de vous inscrire à la Search Console pour figurer dans les résultats de recherche Google. Cependant, en vous inscrivant, vous comprendrez mieux la façon dont Google interprète votre site et serez plus à même de l'améliorer. Nous vous recommandons de consulter la Search Console dans les cas suivants :

  1. Après avoir déployé des données structurées pour la première fois
  2. Après avoir publié de nouveaux modèles ou après avoir mis à jour votre code
  3. Analyse régulière du trafic

Après avoir déployé des données structurées pour la première fois

Une fois que Google a indexé vos pages, recherchez les problèmes à l'aide du rapport sur l'état des résultats enrichis. Idéalement, vous devriez constater une augmentation du nombre de pages valides, sans augmentation du nombre d'erreurs ou d'avertissements. Si vous détectez des problèmes au niveau des données structurées :

  1. Corrigez les erreurs.
  2. Inspectez une URL en ligne pour vérifier si le problème persiste.
  3. Demandez la validation à l'aide du rapport d'état.

Après avoir publié de nouveaux modèles ou après avoir mis à jour votre code

Lorsque vous apportez des modifications importantes à votre site Web, surveillez l'augmentation des erreurs et des avertissements relatifs aux données structurées.
  • Si vous constatez une augmentation du nombre d'erreurs, vous avez peut-être déployé un nouveau modèle qui ne fonctionne pas, ou votre site interagit différemment et de façon incorrecte avec le modèle déjà disponible.
  • Si vous constatez une diminution du nombre d'éléments valides (sans augmentation du nombre d'erreurs), vous n'intégrez peut-être plus de données structurées dans vos pages. Utilisez l'outil d'inspection d'URL pour identifier la cause du problème.

Analyse régulière du trafic

Analysez votre trafic de recherche Google à l'aide du rapport sur les performances. Les données indiquent la fréquence à laquelle votre page s'affiche en tant que résultat enrichi dans la recherche Google, ainsi que la fréquence à laquelle les internautes cliquent dessus et la position moyenne à laquelle vous apparaissez dans les résultats de recherche. Vous pouvez également extraire automatiquement ces résultats avec l'API Search Console.

Dépannage

Si vous ne parvenez pas à mettre en œuvre des données structurées, voici quelques ressources susceptibles de vous aider.