Données structurées pour le contenu accessible par abonnement ou soumis à un paywall (CreativeWork
)
Cette page décrit comment utiliser la méthode schema.org JSON-LD pour signaler la présence de contenu soumis à un paywall sur votre site, à l'aide de propriétés CreativeWork
. Ces données structurées aident Google à différencier le contenu soumis à un paywall des techniques de dissimulation (cloaking), qui ne respectent pas les Règles concernant le spam.
En savoir plus sur le contenu accessible par abonnement ou soumis à un paywall.
Exemple
Voici un exemple de données structurées NewsArticle
dont le contenu est soumis à un paywall.
<html> <head> <title>Article headline</title> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "NewsArticle", "headline": "Article headline", "image": "https://example.org/thumbnail1.jpg", "datePublished": "2025-02-05T08:00:00+08:00", "dateModified": "2025-02-05T09:20:00+08:00", "author": { "@type": "Person", "name": "John Doe", "url": "https://example.com/profile/johndoe123" }, "description": "A most wonderful article", "isAccessibleForFree": false, "hasPart": { "@type": "WebPageElement", "isAccessibleForFree": false, "cssSelector" : ".paywall" } } </script> </head> <body> <div class="non-paywall"> Non-Paywalled Content </div> <div class="paywall"> Paywalled Content </div> </body> </html>
Consignes
Vous devez respecter les consignes générales relatives aux données structurées et les consignes techniques pour que votre page puisse s'afficher dans les résultats de recherche. En outre, les consignes suivantes s'appliquent au contenu soumis à un paywall.
- JSON-LD et le format de microdonnées constituent les méthodes acceptées pour la rédaction de données structurées pour le contenu soumis à un paywall.
- Veuillez ne pas imbriquer de sections de contenu.
-
N'utilisez que des sélecteurs
.class
pour la propriétécssSelector
.
Ajouter un balisage à du contenu soumis à un paywall
Si vous proposez un accès par abonnement au contenu de votre site Web ou si les utilisateurs doivent s'inscrire pour accéder à tout contenu que vous souhaitez indexer, suivez ces étapes. L'exemple suivant s'applique aux données structurées NewsArticle
. Assurez-vous de suivre cette procédure pour toutes les versions de votre page (notamment les versions AMP et standard).
-
Ajoutez un nom de classe autour de chaque section de la page soumise à un paywall. Exemple :
<body> <p>This content is outside a paywall and is visible to all.</p> <div class="paywall">This content is inside a paywall, and requires a subscription or registration.</div> </body>
-
Ajoutez des données structurées
NewsArticle
. -
Ajoutez les données structurées JSON-LD mises en évidence à vos données structurées
NewsArticle
.{ "@context": "https://schema.org", "@type": "NewsArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://example.org/article" }, (...) "isAccessibleForFree": "False", "hasPart": { "@type": "WebPageElement", "isAccessibleForFree": "False", "cssSelector": ".paywall" } }
Plusieurs sections soumises à un paywall
Si plusieurs sections d'une même page sont soumises à un paywall, ajoutez les noms de classe sous forme de tableau (ou "array").
Voici un exemple de plusieurs sections soumises à un paywall sur une même page :
<body> <div class="section1">This content is inside a paywall, and requires a subscription or registration.</div> <p>This content is outside a paywall and is visible to all.</p> <div class="section2">This is another section that's inside a paywall, and requires a subscription or registration.</div> </body>
Voici un exemple de données structurées NewsArticle
dont plusieurs sections sont soumises à un paywall.
{ "@context": "https://schema.org", "@type": "NewsArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://example.org/article" }, (...) "isAccessibleForFree": "False", "hasPart": [ { "@type": "WebPageElement", "isAccessibleForFree": "False", "cssSelector": ".section1" }, { "@type": "WebPageElement", "isAccessibleForFree": "False", "cssSelector": ".section2" } ] }
Types acceptés
Ce balisage est accepté pour le type CreativeWork
ou l'un des types plus spécifiques suivants de la propriété CreativeWork
:
Plusieurs types schema.org peuvent être utilisés, par exemple :
"@type": ["Article", "LearningResource"]
Remarques pour les pages AMP
Voici une liste de points à retenir si vous utilisez des pages AMP :
- Si vous disposez d'une page AMP avec du contenu soumis à un paywall, utilisez le composant amp-subscriptions, le cas échéant.
- Assurez-vous que votre point de terminaison d'autorisation permet aux robots appropriés de Google et d'autres entreprises d'accéder au contenu. Les méthodes varient en fonction de l'éditeur.
- Assurez-vous que votre règle d'accès pour les robots est la même pour les pages AMP et standards. Dans le cas contraire, des erreurs de type "Le contenu ne correspond pas" peuvent s'afficher dans la Search Console.
Vérifiez que Google peut explorer et indexer vos pages
Si vous souhaitez que Google explore et indexe la totalité de votre contenu (y compris les sections soumises à un paywall), vérifiez que votre page est accessible par Googlebot (et Googlebot-News, le cas échéant).
Utilisez l'outil d'inspection d'URL pour tester la manière dont Google explore et affiche une URL sur votre site.
Contrôler les informations qui apparaissent dans les résultats de recherche
Pour empêcher Google d'afficher un lien en cache pour votre page, utilisez la balise meta
noarchive
pour les robots.
Pour exclure certaines sections de votre contenu des extraits de résultats de recherche, utilisez l'attribut HTML data-nosnippet
.
Pour restreindre le nombre de caractères d'un extrait de résultat de recherche, utilisez la balise meta
max-snippet
pour les robots.
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.
- 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 FAQ sur l'exploration et l'indexation dans la recherche Google.
- Posez une question sur le forum Google Search Central.