Données structurées des recettes (Recipe, HowTo, ItemList)
Ajoutez des données structurées à vos recettes pour aider les utilisateurs à trouver plus facilement vos créations culinaires sur Google. Lorsque vous spécifiez des détails tels que les avis des contributeurs, les temps de préparation et de cuisson, et les informations nutritionnelles, Google est plus à même de présenter votre recette aux internautes de façon intéressante. Les recettes peuvent apparaître dans les résultats de recherche Google et dans Google Images.
Selon le balisage de votre contenu, vos recettes peuvent également bénéficier des améliorations suivantes :
| Améliorations spécifiques aux recettes | |
|---|---|
Carrousel hôte de recettes : aidez les utilisateurs à explorer les pages de votre galerie de recettes en ajoutant des données structurées ItemList. |
|
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.
- 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.
- Suivez les consignes.
- 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.
- 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
noindexni par des identifiants de connexion. Si tout semble être en ordre, vous pouvez demander à Google d'explorer de nouveau vos URL. - 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
Voici quelques exemples de recettes au format JSON-LD.
Recette dans la recherche Google
Voici un exemple de page pouvant apparaître dans la recherche Google.
<html>
<head>
<title>Non-Alcoholic Piña Colada</title>
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Recipe",
"name": "Non-Alcoholic Piña Colada",
"image": [
"https://example.com/photos/1x1/photo.jpg",
"https://example.com/photos/4x3/photo.jpg",
"https://example.com/photos/16x9/photo.jpg"
],
"author": {
"@type": "Person",
"name": "Mary Stone"
},
"datePublished": "2024-03-10",
"description": "This non-alcoholic pina colada is everyone's favorite!",
"recipeCuisine": "American",
"prepTime": "PT1M",
"cookTime": "PT2M",
"totalTime": "PT3M",
"keywords": "non-alcoholic",
"recipeYield": "4 servings",
"recipeCategory": "Drink",
"nutrition": {
"@type": "NutritionInformation",
"calories": "120 calories"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": 5,
"ratingCount": 18
},
"recipeIngredient": [
"400ml of pineapple juice",
"100ml cream of coconut",
"ice"
],
"recipeInstructions": [
{
"@type": "HowToStep",
"name": "Blend",
"text": "Blend 400ml of pineapple juice and 100ml cream of coconut until smooth.",
"url": "https://example.com/non-alcoholic-pina-colada#step1",
"image": "https://example.com/photos/non-alcoholic-pina-colada/step1.jpg"
},
{
"@type": "HowToStep",
"name": "Fill",
"text": "Fill a glass with ice.",
"url": "https://example.com/non-alcoholic-pina-colada#step2",
"image": "https://example.com/photos/non-alcoholic-pina-colada/step2.jpg"
},
{
"@type": "HowToStep",
"name": "Pour",
"text": "Pour the pineapple juice and coconut mixture over ice.",
"url": "https://example.com/non-alcoholic-pina-colada#step3",
"image": "https://example.com/photos/non-alcoholic-pina-colada/step3.jpg"
}
],
"video": {
"@type": "VideoObject",
"name": "How to Make a Non-Alcoholic Piña Colada",
"description": "This is how you make a non-alcoholic piña colada.",
"thumbnailUrl": [
"https://example.com/photos/1x1/photo.jpg",
"https://example.com/photos/4x3/photo.jpg",
"https://example.com/photos/16x9/photo.jpg"
],
"contentUrl": "https://www.example.com/video123.mp4",
"embedUrl": "https://www.example.com/videoplayer?video=123",
"uploadDate": "2024-02-05T08:00:00+08:00",
"duration": "PT1M33S",
"interactionStatistic": {
"@type": "InteractionCounter",
"interactionType": { "@type": "WatchAction" },
"userInteractionCount": 2347
},
"expires": "2024-02-05T08:00:00+08:00"
}
}
</script>
</head>
<body>
</body>
</html>Carrousel
Voici un exemple de page récapitulant des recettes (page contenant une liste de recettes) avec des données structurées itemList. Ce contenu peut s'afficher sous forme de grille dans les résultats de recherche.
<html>
<head>
<title>Grandma's Best Pie Recipes</title>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "ItemList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"url": "https://example.com/apple-pie.html"
},
{
"@type": "ListItem",
"position": 2,
"url": "https://example.com/blueberry-pie.html"
},
{
"@type": "ListItem",
"position": 3,
"url": "https://example.com/cherry-pie.html"
}]
}
</script>
</head>
<body>
</body>
</html>Consignes
Pour que votre balisage puisse s'afficher dans les résultats de recherche, vous devez respecter les consignes générales relatives aux données structurées.
Les consignes suivantes s'appliquent aux données structurées Recipe.
- Utilisez des données structurées
Recipepour le contenu ayant trait à la préparation d'un plat particulier. Par exemple, "gommage du visage" ou "idées de fête" ne sont pas des noms valables pour un plat. - Pour que vos recettes apparaissent dans un carrousel ou dans une grille, vous devez respecter les consignes suivantes :
- Fournissez des données structurées
ItemListpour récapituler les recettes que vous voulez ajouter à la liste. Vous pouvez fournir des données structuréesItemListséparément ou avec des données structurées de recette. - Votre site doit contenir une page récapitulative qui répertorie toutes les recettes de la collection. Par exemple, lorsqu'un internaute clique sur le lien de la page récapitulative dans les résultats de recherche, il doit être redirigé vers une page de votre site répertoriant les recettes associées à sa recherche.
- Fournissez des données structurées
Définitions des types de données structurées
Vous devez inclure les propriétés obligatoires pour que votre contenu puisse s'afficher sous forme de résultat enrichi dans la recherche Google. Vous pouvez également inclure les propriétés recommandées pour ajouter d'autres informations à votre contenu et ainsi offrir une meilleure expérience utilisateur.
Recipe
Balisez le contenu de votre recette avec les propriétés suivantes du type schema.org Recipe. La définition complète de Recipe est disponible sur schema.org/Recipe.
Les propriétés prises en charge par Google sont les suivantes :
| Propriétés obligatoires | |
|---|---|
image
|
Image du plat terminé. Additional image guidelines:
For example: "image": [ "https://example.com/photos/1x1/photo.jpg", "https://example.com/photos/4x3/photo.jpg", "https://example.com/photos/16x9/photo.jpg" ] |
name |
Nom du plat. |
| Propriétés recommandées | |
|---|---|
aggregateRating |
Annotation désignant la note moyenne attribuée à l'élément. Respectez les Consignes relatives aux extraits d'avis ainsi que la liste des propriétés Si les données structurées |
author |
Nom de la personne ou de l'organisation qui a rédigé la recette. Pour aider Google à interpréter les auteurs dans différentes fonctionnalités, envisagez de suivre les bonnes pratiques en matière de balisage des auteurs. |
cookTime |
Temps de cuisson du plat, au format ISO 8601, le cas échéant. Utilisez toujours cette propriété conjointement avec |
datePublished |
Date à laquelle la recette a été publiée, au format ISO 8601, le cas échéant. |
description |
Brève description du plat. |
keywords
|
Autres termes liés à la recette tels que la saison ("été"), l'occasion spéciale ("Halloween") ou d'autres descripteurs ("rapide", "facile", "authentique"). Consignes supplémentaires
|
nutrition.calories |
Nombre de calories de chaque portion pour cette recette. Si |
prepTime |
Temps de préparation des ingrédients et de l'espace de travail pour le plat, au format ISO 8601, le cas échéant. Utilisez toujours cette propriété conjointement avec |
recipeCategory |
Type de repas ou de plat dont la recette fait l'objet. Exemple : "dîner", "plat principal" ou "dessert, collation". |
recipeCuisine |
Région associée à la recette. Par exemple, "France", "Méditerranée" ou 'États-Unis". |
recipeIngredient |
Un des ingrédients utilisés dans la recette. Exemple : "recipeIngredient": [ "1 (15 ounce) package double crust ready-to-use pie crust", "6 cups thinly sliced, peeled apples (6 medium)", "3/4 cup sugar", "2 tablespoons all-purpose flour", "3/4 teaspoon ground cinnamon", "1/4 teaspoon salt", "1/8 teaspoon ground nutmeg", "1 tablespoon lemon juice" ] Consignes supplémentaires :
|
recipeInstructions
|
Étapes de préparation du plat. Plusieurs options permettent de définir la valeur de
Consignes supplémentaires
|
recipeYield |
Quantité produite par la recette, le cas échéant. Indiquez le nombre de portions que cette recette permet de préparer. Si vous souhaitez utiliser une autre unité (par exemple, le nombre d'éléments), vous pouvez inclure des champs supplémentaires. Cela est obligatoire si vous spécifiez des informations nutritionnelles par portion (par exemple, Exemple "recipeYield": [ "6", "24 cookies" ] |
totalTime |
Temps total de préparation du plat, au format ISO 8601, le cas échéant. Utilisez |
video
|
VideoObject
Vidéo illustrant les étapes de préparation du plat. Respectez la liste des propriétés vidéo obligatoires et recommandées. |
HowToSection
Utilisez HowToSection pour regrouper une séquence d'étapes (ou de sous-sections) qui font partie des instructions d'une recette. Spécifiez HowToSection directement dans la définition de la propriété recipeInstructions ou comme itemListElement d'une autre propriété HowToSection.
Le type HowToSection définit une section d'une recette unique et contient une ou plusieurs étapes. N'utilisez pas HowToSection pour définir différentes recettes pour un même plat. HowToSection est destiné à une seule et même recette. Si vous souhaitez répertorier plusieurs recettes pour un même plat, utilisez plusieurs objets Recipe. Par exemple, pour spécifier plusieurs façons de préparer une tarte aux pommes, répertoriez-les comme plusieurs objets Recipe, et non comme des objets HowToSection.
La définition complète de la propriété HowToSection est disponible sur schema.org/HowToSection.
| Propriétés obligatoires | |
|---|---|
itemListElement
|
HowToStep
Liste des étapes détaillées de la section et/ou des sous-sections. Par exemple, une recette de pizza peut comporter un ensemble d'étapes pour la préparation de la pâte, un autre pour la préparation de la garniture, puis un autre pour expliquer comment cuire la pâte et la garniture ensemble. Exemple : { "@type": "HowToSection", "name": "Assemble the pie", "itemListElement": [ { "@type": "HowToStep", "text": "In large bowl, gently mix filling ingredients; spoon into crust-lined pie plate." }, { "@type": "HowToStep", "text": "Top with second crust. Cut slits or shapes in several places in top crust." } ] } |
name
|
Text
Nom de la section. |
HowToStep
Utilisez HowToStep pour regrouper une ou plusieurs phrases expliquant comment réaliser une partie de la recette, si cela est pertinent pour votre contenu. Spécifiez la propriété text avec les phrases ou, alternativement, définissez itemListElement avec un élément HowToDirection ou HowToTip pour chaque phrase.
Vous pouvez baliser les étapes de la recette avec les propriétés suivantes de type HowToStep. Spécifiez un élément HowToStep directement dans la définition de la propriété recipeInstructions ou comme élément itemListElement d'une propriété HowToSection.
La définition complète de la propriété HowToStep est disponible sur schema.org/HowToStep.
| Propriétés obligatoires | |
|---|---|
itemListElement
|
HowToDirection ou HowToTip
Liste d'étapes secondaires détaillées comprenant des instructions ou des conseils. Propriété facultative si l'élément |
text
|
Text
Instructions écrites complètes de cette étape. Propriété facultative si l'élément
|
| Propriétés recommandées | |
|---|---|
image
|
ImageObject ou URL
Image représentant l'étape. Consignes supplémentaires relatives aux images :
|
name
|
Text
Mot ou courte expression résumant l'étape (par exemple, "Disposer la pâte à tarte"). N'utilisez pas de texte non descriptif (par exemple, "Étape 1 : [texte]") ni d'autre forme de numérotation d'étape (par exemple, "1. [texte]"). |
url
|
URL
|
video
|
VideoObject ou Clip
Vidéo représentant cette étape ou clip de la vidéo. Pour |
HowToDirection et HowToTip
Utilisez HowToDirection et HowToTip pour décrire des instructions ou des conseils, le cas échéant.
Leurs propriétés obligatoires et facultatives sont identiques.
Les définitions complètes des éléments HowToDirection et HowToTip sont disponibles sur schema.org/HowToDirection et schema.org/HowToTip.
| Propriétés obligatoires | |
|---|---|
text
|
Text
Texte de l'instruction ou du conseil. |
ItemList
Outre les propriétés de recette, ajoutez les propriétés suivantes pour les listes spécifiques à l'hôte. Bien que ItemList ne soit pas obligatoire, vous devez ajouter les propriétés suivantes si vous souhaitez que votre recette puisse s'afficher dans un carrousel hôte. Pour plus d'informations sur le carrousel hôte, consultez la section Carrousel.
La définition complète de l'élément ItemList est disponible sur schema.org/ItemList.
| Propriétés obligatoires | |
|---|---|
itemListElement
|
Annotation pour une page d'élément. |
ListItem.position
|
Position ordinale de la page d'élément dans la liste. Exemple :
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
}, {
"@type": "ListItem",
"position": 2,
}
]
|
ListItem.url
|
URL canonique de la page d'élément. Chaque élément doit avoir une URL unique. |
Monitor rich results with Search Console
Search Console is a tool that helps you monitor how your pages perform in Google Search. You don't have to sign up for Search Console to be included in Google Search results, but it can help you understand and improve how Google sees your site. We recommend checking Search Console in the following cases:
- After deploying structured data for the first time
- After releasing new templates or updating your code
- Analyzing traffic periodically
After deploying structured data for the first time
After Google has indexed your pages, look for issues using the relevant Rich result status report. Ideally, there will be an increase of valid items, and no increase in invalid items. If you find issues in your structured data:
- Fix the invalid items.
- Inspect a live URL to check if the issue persists.
- Request validation using the status report.
After releasing new templates or updating your code
When you make significant changes to your website, monitor for increases in structured data invalid items.- If you see an increase in invalid items, perhaps you rolled out a new template that doesn't work, or your site interacts with the existing template in a new and bad way.
- If you see a decrease in valid items (not matched by an increase in invalid items), perhaps you are no longer embedding structured data in your pages. Use the URL Inspection tool to learn what is causing the issue.
Analyzing traffic periodically
Analyze your Google Search traffic using the Performance Report. The data will show you how often your page appears as a rich result in Search, how often users click on it and what is the average position you appear on search results. You can also automatically pull these results with the Search Console API.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.
- Si vous utilisez un système de gestion de contenu (CMS) ou si une autre personne s'occupe de votre site, demandez à la personne en charge de vous aider. Veillez à lui transmettre tous les messages de la Search Console qui détaillent le problème.
- Google ne garantit pas que les fonctionnalités basées sur les données structurées apparaîtront dans les résultats de recherche. Pour consulter la liste des raisons courantes pour lesquelles Google n'affiche pas toujours votre contenu dans un résultat enrichi, reportez-vous aux consignes générales relatives aux données structurées.
- Vos données structurées comportent peut-être une erreur. Consultez la liste des erreurs de données structurées et le rapport sur les données structurées impossibles à analyser.
- Si vous avez reçu une action manuelle de données structurées concernant votre page, ces données seront ignorées (mais la page concernée apparaîtra peut-être toujours dans les résultats de recherche Google). Pour résoudre les problèmes de données structurées, utilisez le rapport sur les actions manuelles.
- Consultez à nouveau les consignes pour déterminer si votre contenu est bien conforme. Le problème peut être dû à une page contenant du spam ou à l'utilisation de balises qui en contiennent. Toutefois, il est possible qu'il ne s'agisse pas d'un problème de syntaxe et que le test des résultats enrichis ne puisse pas identifier le problème.
- Découvrez comment résoudre les problèmes liés aux résultats enrichis manquants ou à une baisse du nombre total de résultats enrichis.
- Prévoyez un certain temps avant que la réexploration et la réindexation soient effectuées. Gardez à l'esprit qu'il faut souvent compter plusieurs jours après la publication d'une page pour que Google puisse la trouver et l'explorer. Pour toute question d'ordre général sur l'exploration et l'indexation, consultez les questions fréquentes sur l'exploration et l'indexation dans la recherche Google.
- Posez une question sur le forum Google Search Central.