Dados estruturados de assinatura e conteúdo com paywall (CreativeWork
)
Esta página descreve como usar JSON-LD do schema.org para indicar conteúdo com paywall no site
usando
propriedades
CreativeWork
(link em inglês). Esses dados estruturados ajudam o Google a diferenciar esse material das
técnicas de cloaking, que
violam as políticas de spam.
Saiba mais sobre o
conteúdo com paywall e de assinatura.
Exemplo
Confira um exemplo de
dados estruturados de NewsArticle
indicando conteúdo com 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>
Diretrizes
É preciso seguir as diretrizes gerais e as especificações técnicas de dados estruturados para qualificar a página para exibição nos resultados da pesquisa. Além disso, as seguintes diretrizes são aplicadas a conteúdos com paywall:
- Os formatos JSON-LD e microdados são métodos aceitos para especificar dados estruturados de conteúdo com paywall.
- Não aninhe seções de conteúdo.
-
Só use seletores
.class
para a propriedadecssSelector
.
Adicionar marcação a conteúdos com paywall
Se você oferecer
acesso baseado em assinatura ao
conteúdo do seu site, ou se os usuários precisarem se registrar para acessar qualquer conteúdo que você queira
indexar, siga estas etapas. O exemplo a seguir se aplica aos
dados estruturados de NewsArticle
. Siga estas etapas para
todas as versões da sua página, incluindo AMP e não AMP.
-
Adicione um nome de classe a cada seção com paywall da página. Exemplo:
<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>
-
Adicione os dados estruturados de
NewsArticle
. -
Adicione os dados estruturados JSON-LD destacados aos
dados estruturados de
NewsArticle
.{ "@context": "https://schema.org", "@type": "NewsArticle", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://example.org/article" }, (...) "isAccessibleForFree": false, "hasPart": { "@type": "WebPageElement", "isAccessibleForFree": false, "cssSelector": ".paywall" } }
- Valide o código com o Teste de pesquisa aprimorada e corrija os erros críticos.
Várias seções com paywall
Se você tiver várias seções com paywall em uma página, adicione os nomes das classes como uma matriz.
Confira um exemplo de seções com paywall em uma página:
<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, or requires a subscription or registration.</div> </body>
Confira um exemplo de dados estruturados de NewsArticle
indicando várias seções com 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" } ] }
Tipos compatíveis
Essa marcação é compatível com o tipo
CreativeWork
ou um dos seguintes tipos mais específicos de CreativeWork
:
Vários tipos do schema.org podem ser usados, como o seguinte:
"@type": ["Article", "LearningResource"]
É necessário incluir as propriedades obrigatórias para que o Google entenda que seu artigo tem conteúdo com paywall. É possível adicionar as propriedades recomendadas para ter mais granularidade sobre quais seções de uma página estão atrás de um paywall (ou exigem uma assinatura ou registro).
Propriedades obrigatórias | |
---|---|
isAccessibleForFree
|
Se o artigo é acessível a todos ou protegido por um paywall (ou exige uma
assinatura ou registro). Defina a propriedade |
Propriedades recomendadas | |
---|---|
hasPart.cssSelector
|
Um seletor de CSS que faz referência ao nome de classe definido no HTML para especificar a seção com paywall. |
hasPart.@type
|
Defina |
hasPart.isAccessibleForFree
|
Indica se a seção do artigo é protegida por um paywall (ou exige uma assinatura ou
registro). Defina a propriedade |
Considerações sobre AMP
Se você usar páginas AMP, considere o seguinte:
-
Se você tiver uma página AMP com conteúdo com paywall, use
amp-subscriptions
quando apropriado. - Seu endpoint de autorização precisa conceder acesso ao conteúdo para os bots do Google e de terceiros. Isso varia de acordo com o editor.
- A política de acesso do bot precisa ser a mesma para páginas AMP e não AMP, caso contrário, podem ocorrer erros de incompatibilidade de conteúdo exibidos no Search Console.
Considerações sobre a IA generativa na Pesquisa
Os resumos gerados com IA oferecem uma prévia de um tópico ou uma consulta com base em várias fontes, incluindo fontes da Web. Por isso, eles estão sujeitos aos controles de visualização da Pesquisa.
As ferramentas de IA durante a navegação, um recurso separado dos resumos gerados com IA, não vão mostrar os pontos principais de matérias com paywall, se os dados estruturados de paywall estiverem na página.
Conferir se o Google pode rastrear e indexar suas páginas
Para que o Google rastreie e indexe todo o conteúdo, incluindo as seções com paywall, verifique
se o Googlebot e o
Googlebot-News
, se
aplicável, têm acesso a ele.
Use a Ferramenta de inspeção de URL para testar como o Google rastreia e renderiza um URL do seu site.
Controlar as informações que são exibidas nos resultados da pesquisa
Para impedir que algumas seções do seu conteúdo sejam exibidas em snippets de resultados da pesquisa, use o
atributo HTML data-nosnippet
.
Também é possível limitar o número de caracteres de um snippet de resultado da pesquisa usando a
meta
tag robots max-snippet
.
Solução de problemas
Se você tiver problemas para implementar ou depurar dados estruturados, veja alguns recursos que podem ajudar.
- Se você usa um sistema de gerenciamento de conteúdo (CMS) ou se alguém está cuidando do seu site, peça ajuda para o prestador de serviço. Não se esqueça de encaminhar todas as mensagens do Search Console com os detalhes do problema.
- O Google não garante que os recursos que consomem dados estruturados vão ser exibidos nos resultados da pesquisa. Para ver uma lista de motivos comuns por que o Google pode não exibir seu conteúdo na pesquisa aprimorada, consulte as diretrizes gerais de dados estruturados.
- Pode haver um erro nos dados estruturados. Confira a lista de erros de dados estruturados e o Relatório de dados estruturados que não podem ser analisados.
- Se você recebeu uma ação manual de dados estruturados relacionada à sua página, esses dados serão ignorados, embora a página ainda possa aparecer nos resultados da Pesquisa Google. Para corrigir problemas de dados estruturados, use o Relatório de ações manuais.
- Consulte as diretrizes novamente para identificar se o conteúdo não está em conformidade com elas. O problema pode ser causado por conteúdo com spam ou uso de marcação com spam. No entanto, talvez o problema não seja de sintaxe e, por isso, o teste de pesquisa aprimorada não poderá identificá-lo.
- Resolva problemas relacionados à ausência e à queda no total de pesquisas aprimoradas.
- Aguarde algum tempo antes de voltar a rastrear e reindexar. Pode levar vários dias depois da publicação de uma página para que o Google a localize e rastreie. Para perguntas gerais sobre rastreamento e indexação, consulte as Perguntas frequentes sobre rastreamento e indexação da Pesquisa Google.
- Poste uma pergunta no fórum da Central da Pesquisa Google