O seguinte é executado na Ferramenta de teste de dados estruturados do Google, conforme o esperado:
<div>
<div itemprop="publisher" itemscope id="organization-example" itemtype="https://schema.org/Organization">
<a itemprop="url" href="https://example.com">
<img itemprop="image logo" src="https://example.com/images/logo.png" alt="LOGO">
<span itemprop="name">EXAMPLE</span>
<span itemprop="description">This is an EXAMPLE</span>
</a>
</div>
</div>
<div itemscope itemtype="https://schema.org/WebPage" itemref="organization-example">
</div>
Mas quando tento usar um, BlogPosting
ele quebra a logo
propriedade:
<div>
<div itemprop="publisher" itemscope id="organization-example" itemtype="https://schema.org/Organization">
<a itemprop="url" href="https://example.com">
<img itemprop="image logo" src="https://example.com/images/logo.png" alt="LOGO">
<span itemprop="name">EXAMPLE</span>
<span itemprop="description">This is an EXAMPLE</span>
</a>
</div>
</div>
<article
itemscope
itemtype="https://schema.org/BlogPosting"
itemref="organization-example"
>
</article>
Com o erro:
https://example.com/images/logo.png
(O atributo logo.itemtype tem um valor inválido.)
Alguém pode explicar o porquê? E que medidas eu poderia tomar para corrigi-lo?
itemprop
na mesma linha que itemtype
.
itemprop
na mesma linha que umitemtype
, pois o editor é filho de Organization, WebPage e BlogPosting. Melhor usar<body itemscope itemtype="https://schema.org/Organization">
então<article itemscope itemtype="https://schema.org/BlogPosting">
<span itemprop="publisher">
etc ... Não deve haver necessidade de repetir o logotipo várias vezes, principalmente em um post do blog.