Логотип издателя блогпостинга "logo.itemtype имеет недопустимое значение" в инструменте тестирования структурированных данных Google
Следующее выполняется через Инструмент тестирования структурированных данных Google , как и ожидалось:
<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 имеет недопустимое значение.)
Кто-нибудь может объяснить, почему? И какие шаги я мог бы предпринять, чтобы исправить это?
2 answers
Оказывается, поскольку BlogPosting
является одним из типов, поддерживаемых Google в качестве возможного расширенного фрагмента кода, они применяют дополнительную проверку:
Руководство по документации для поиска в Google для статей
Для этого требуется, чтобы издатель статьи logo
имел тип ImageObject
и имел width
и height
в пикселях. BlogPosting
является подтипом Article
.
Этот обновленный фрагмент проверяется с помощью Инструмента тестирования структурированных данных Google:
<div id='web-page-example' itemprop="mainEntityOfPage" itemscope itemtype="https://schema.org/WebPage" itemref="headline-example">
<div>
<div itemprop="publisher" itemscope id="organization-example" itemtype="https://schema.org/Organization">
<a itemprop="url" href="https://example.com">
<span itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
<img itemprop="url" src="https://example.com/images/logo.png" alt="LOGO">
<meta itemprop="width" content="600">
<meta itemprop="height" content="60">
</span>
<span itemprop="name">EXAMPLE</span>
<span itemprop="description">This is an EXAMPLE</span>
</a>
</div>
</div>
<div
id="blog-posting-example"
itemprop="mainEntity"
itemscope
itemtype="https://schema.org/BlogPosting"
itemref="organization-example web-page-example"
>
<span itemprop="author" itemscope itemtype="https://schema.org/Person">
<span itemprop="name">Example Author</span>
</span>
<time itemprop="datePublished" datetime="2016-05-09T11:40:04+02:00">9th May 2016</time>
<time itemprop="dateModified" datetime="2016-05-09T11:40:04+02:00">9th May 2016</time>
<h1 id="headline-example" itemprop="name headline">Example Headline</h1>
<span itemprop="image" itemscope itemtype="https://schema.org/ImageObject">
<img itemprop="url" src="https://example.com/images/blog.png" alt="LOGO">
<meta itemprop="width" content="800">
<meta itemprop="height" content="400">
</span>
</div>
</div>
Блестящий и полезный ответ @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"
}
}
N.B. Согласно https://developers.google.com/search/docs/data-types/articles
Логотип должен быть прямоугольником, а не квадратом.
Логотип должен вписываться в
60x600px
прямоугольник., и либо быть точно60px
высоким (предпочтительно), либо точно600px
широким. (Например,450x45px
было бы неприемлемо, даже если это вписывается в600x60px
прямоугольник.)