<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>
但是当我尝试使用
BlogPosting
会破坏logo
属性: <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>
,出现错误:
https://example.com/images/logo.png
(属性logo.itemtype具有无效值。)谁能解释为什么?以及我可以采取哪些步骤来修复它?
#1 楼
事实证明,由于BlogPosting
是Google作为可能的Rich Snippet支持的一种类型,因此它们应用了更多的验证方法:Google搜索文章的文档准则
发布者的
logo
类型为ImageObject
,像素为width
和height
。 BlogPosting
是Article
的子类型。此更新的代码段通过Google结构化数据测试工具进行了验证: / pre>
#2 楼
上面@Arth提供的出色而有用的答案。为了补充上面的答案(不与之竞争),这里是使用相同schema.org词汇的相同结构化数据,但这一次在
JSON-LD
中: "publisher": {
"@type": "Organization",
"name": "myOrganization",
"logo": {
"@type": "ImageObject",
"name": "myOrganizationLogo",
"width": "60",
"height": "600",
"url": "http://my-organization.org/my-logo.png"
}
}
NB根据https://developers.google.com/search/docs/data-types/articles
徽标应为矩形,而不是正方形。
60x600px矩形中,且正好为
60px
高(首选),或正好为600px
宽。 (例如,即使它适合450x45px
矩形,也不能接受600x60px
。)
评论
由于发布者是Organization,WebPage和BlogPosting的子级,因此应避免在与itemtype相同的行上使用itemprop。最好使用,然后使用@SimonHayter谢谢,但是Publisher不是Organization的子级,而Organization在WebPage的顶部,因此我想从BlogPosting引用它。.您是否建议使用Organization-> BlogPosting-> Publisher结构?这似乎不正确。
@SimonHayter还是https://schema.org/WebPage,整个站点到处都是示例,它们确实做到了这一点。itemprop与itemtype在同一行。
金发碧眼的时刻,我完全错了。我待会再看,然后再回头给您:)