schema.org/BlogPosting изображение позволяет ImageObject и URL, однако Google разрешает только ImageObject , поэтому погрешность. Предполагаемая разметка:
<!-- my code -->
<div itemprop="image" itemscope itemtype="http://schema.org/ImageObject">
<img src="image.jpg" itemprop="url">
</div>
Другое несоответствие - schema.org/ImageObject рекомендует contentUrl
, но Google рекомендует url
, поэтому мое использование выше.
В ответ на код вашего комментария ваша структура по-прежнему неверна. Я возьму это построчно:
<!-- your code -->
<div itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
Незначительный момент, но если вы не переходите на XHTML, itemscope='itemscope'
это неправильно. Используйте itemscope
(как вы сделали позже).
<!-- your code -->
<div itemprop='articleBody'>
<div itemscope itemtype="http://schema.org/ImageObject"/>
Ваш ImageObject является дочерним по отношению к свойству articleBody, но вы не связали его таким образом. Например, у вас есть articleBody без связанных свойств и не связанный объект ImageObject. Вы должны использовать
<!-- my code -->
<div itemprop="image" itemscope itemtype="http://schema.org/ImageObject">
Кроме того, />
это неверно, даже если вы пытаетесь использовать XHTML, так как у этого элемента есть дочерние элементы и закрытие </div>
. Просто используйте, >
как я включил в приведенный выше фрагмент.
<!-- your code -->
<a href="1.png" itemprop="url"><img itemprop="image sharedContent" src="1.png" /></a>
Что делает sharedContent здесь? sharedContent ожидает CreativeWork при использовании в качестве свойства SocialMediaPosting - никогда не в качестве свойства ImageObject и никогда в img.
Ваш другой фрагмент кода, который размещает свойство sharedContent, как показано ниже, также неверен.
<!-- your code -->
<div itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
<div itemprop='articleBody'>
<div itemprop='sharedContent'>
<div itemscope itemtype="http://schema.org/ImageObject"/>
…
Хотя sharedContent теперь находится в нужном месте, он все равно должен быть CreativeWork. Ваши объекты ImageObject по-прежнему не связаны с BlogPosting, как показывает инструмент тестирования структурированных данных.
Ниже приведен правильный код.
<!-- my code -->
<div itemscope itemtype="http://schema.org/BlogPosting">
<div itemprop="articleBody">
<div itemprop="image" itemscope itemtype="http://schema.org/ImageObject">
<a href="1.png" itemprop="url"><img itemprop="image" src="1.png"></a>
</div>
<div itemprop="image" itemscope itemtype="http://schema.org/ImageObject">
<a href="2.png" itemprop="url"><img itemprop="image" src="2.png"></a>
</div>
<div itemprop="image" itemscope itemtype="http://schema.org/ImageObject">
<a href="3.png" itemprop="url"><img itemprop="image" src="3.png"></a>
</div>
</div>
</div>