Données structurées des questions/réponses (QAPage)

Illustration d'un résultat enrichi de type "Questions/Réponses"

Les pages de questions/réponses 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 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. Par exemple, un résultat enrichi peut s'afficher pour la requête utilisateur "Comment retirer un câble coincé dans un port USB ?" si la page a été balisée avec des réponses à cette question.

En plus de permettre à votre contenu d'apparaître en tant que résultat enrichi, le balisage de votre page de questions/réponses aide Google à générer un extrait plus pertinent pour votre page. 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. En fonction du format que vous utilisez, découvrez où insérer des données structurées sur la page.
  2. Suivez les consignes.
  3. Validez votre code à l'aide de l'outil de test des résultats enrichis et corrigez les erreurs critiques, le cas échéant. Envisagez également de résoudre les problèmes non critiques que l'outil a pu signaler, car cela peut contribuer à améliorer la qualité de vos données structurées. Toutefois, ce n'est pas nécessaire pour pouvoir bénéficier 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,
        "datePublished": "2024-02-14T15:34-05:00",
        "author": {
          "@type": "Person",
          "name": "Mary Stone",
          "url": "https://example.com/profiles/mary-stone"
        },
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "1 pound (lb) is equal to 16 ounces (oz).",
          "image": "https://example.com/images/conversion-chart.jpg",
          "upvoteCount": 1337,
          "url": "https://example.com/question1#acceptedAnswer",
          "datePublished": "2024-02-14T16:34-05:00",
          "author": {
            "@type": "Person",
            "name": "Julius Fernandez",
            "url": "https://example.com/profiles/julius-fernandez"
          }
        },
        "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.",
            "upvoteCount": 42,
            "url": "https://example.com/question1#suggestedAnswer1",
            "datePublished": "2024-02-14T15:39-05:00",
            "author": {
              "@type": "Person",
              "name": "Kara Weber",
              "url": "https://example.com/profiles/kara-weber"
            },
            "comment": {
              "@type": "Comment",
              "text": "I'm looking for ounces, not fluid ounces.",
              "datePublished": "2024-02-14T15:40-05:00",
              "author": {
                "@type": "Person",
                "name": "Mary Stone",
                "url": "https://example.com/profiles/mary-stone"
              }
            }
          }, {
            "@type": "Answer",
            "text": " I can't remember exactly, but I think 18 ounces in a lb. You might want to double check that.",
            "upvoteCount": 0,
            "url": "https://example.com/question1#suggestedAnswer2",
            "datePublished": "2024-02-14T16:02-05:00",
            "author": {
              "@type": "Person",
              "name": "Joe Cobb",
              "url": "https://example.com/profiles/joe-cobb"
            }
          }
        ]
      }
    }
    </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>
    <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>
    <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>
     <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>
</div>
</div>
</body>
</html>

Consignes

Pour que votre page de questions/réponses 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. Utilisez plutôt la propriété comment et le type Comment pour ce type de contenu.
  • 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.
  • Les pages de questions/réponses sur l'éducation, dont l'objectif principal est de fournir une réponse appropriée à la question d'un utilisateur pour ses devoirs, peuvent s'afficher dans un carrousel. Ces pages ne peuvent contenir qu'une seule réponse fournie ou sélectionnée par des experts en interne (et non par des utilisateurs).
    Exemple : page éducative sur laquelle un utilisateur a envoyé une seule question et sur laquelle une réponse principale est sélectionnée par des experts.

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. Veillez à ne spécifier 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. Veillez à ne spécifier 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. Les propriétés prises en charge par Google sont les suivantes :

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. Elle 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

Informations sur l'auteur de la question. Pour aider Google à interpréter les auteurs dans différentes fonctionnalités, nous vous recommandons de suivre les bonnes pratiques en matière de balisage des auteurs.

Incluez autant de propriétés que pertinent pour l'auteur en vous appuyant sur les propriétés prises en charge des données structurées des articles et des pages de profil.

author.url

URL

Lien vers une page Web identifiant de manière unique l'auteur de la question (il s'agit probablement d'une page de profil du site Web de questions/réponses). Nous vous recommandons de baliser cette page à l'aide des données structurées de page de profil.

comment

Comment

Un commentaire concernant la question, le cas échéant. Idéalement, ce contenu ne doit pas être une réponse : il s'agit généralement d'une clarification ou d'une discussion sur la question.

dateModified

DateTime

Date et heure auxquelles la réponse a été modifiée, au format ISO 8601, le cas échéant.

datePublished

DateTime

Date et heure de publication de la question, au format ISO 8601.

image

ImageObject ou URL

Les images intégrées à la question, le cas échéant.

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.

video

VideoObject

Les vidéos intégrées à la question, le cas échéant.

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 dans 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 est susceptible de 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

Informations sur l'auteur de la réponse. Pour aider Google à interpréter les auteurs dans différentes fonctionnalités, nous vous recommandons de suivre les bonnes pratiques en matière de balisage des auteurs.

Incluez autant de propriétés que pertinent pour l'auteur en vous appuyant sur les propriétés prises en charge des données structurées des articles et des pages de profil.

author.url

URL

Lien vers une page Web identifiant de manière unique l'auteur de la réponse (il s'agit probablement d'une page de profil du site Web de questions/réponses). Nous vous recommandons de baliser cette page à l'aide des données structurées de page de profil.

comment

Comment

Commentaire concernant la réponse, généralement une clarification ou une discussion à son sujet, le cas échéant.

dateModified

DateTime

Date et heure auxquelles la réponse a été modifiée, au format ISO 8601, le cas échéant.

datePublished

DateTime

Date et heure auxquelles la question a reçu une réponse, au format ISO 8601.

image

ImageObject ou URL

Les images intégrées à la question, le cas échéant.

upvoteCount

Integer

Nombre total de votes que cette réponse a reçus, le cas échéant. 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

video

VideoObject ou URL

Vidéos intégrées à la réponse, le cas échéant.

Comment

Le type Comment peut éventuellement être utilisé pour décrire des clarifications ou des discussions sur la question ou la réponse qui ne sont ni une question ni une réponse. Définissez Comments dans Question ou Answer en tant que valeurs pour la propriété comment.

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

Propriétés obligatoires

text

Text

Texte complet du commentaire. Si seule une partie est balisée, Google ne sera peut-être pas en mesure de déterminer le meilleur texte à afficher.

Propriétés recommandées

author

Person ou Organization

Informations sur l'auteur du commentaire. Pour aider Google à interpréter les auteurs dans différentes fonctionnalités, nous vous recommandons de suivre les bonnes pratiques en matière de balisage des auteurs.

Incluez autant de propriétés que pertinent pour l'auteur en vous appuyant sur les propriétés prises en charge des données structurées des articles et des pages de profil.

author.url

URL

Lien vers une page Web identifiant de manière unique l'auteur du commentaire (il s'agit probablement d'une page de profil du site Web de questions-réponses). Nous vous recommandons de baliser cette page à l'aide des données structurées de page de profil.

comment

Comment

Un commentaire en fil imbriqué répondant au commentaire, le cas échéant.

dateModified

DateTime

Date et heure de modification du commentaire, au format ISO 8601, le cas échéant.

datePublished

DateTime

Date et heure auxquelles le commentaire a été rédigé, au format ISO 8601.

image

ImageObject ou URL

Images intégrées au commentaire, le cas échéant.

video

VideoObject ou URL

Vidéos intégrées au commentaire, le cas échéant.

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. Lors des analyses régulières 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, il y aura une augmentation du nombre d'articles valides et pas d'augmentation du nombre d'articles non valides. Si vous détectez des problèmes au niveau des données structurées :

  1. Corrigez les éléments non valides.
  2. Inspectez une URL active 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 éléments non valides dans les données structurées.
  • Si vous constatez une augmentation du nombre d'éléments non valides, 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'éléments non valides), 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.

Lors des analyses régulières 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 ou à déboguer des données structurées, voici quelques ressources susceptibles de vous aider.