itemprop = url свойство элемента изображения не проверяется - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть код ниже, который, если я проверяю его на https://search.google.com/structured-data/testing-tool,, я получаю ошибку

Требуется значение для поля url.

на элемент изображения.

Я попытался поместить атрибут itemprop='url' в элемент picture, source и img, но ошибка остается той же. Как добавить свойство url, чтобы Google принимал структурированные данные?

<li itemscope itemtype='http://schema.org/LocalBusiness'>
<div>
    <div itemprop='image' itemscope itemtype='http://schema.org/ImageObject'>
        <a href="http://www.example.com/venues/220/studio-54">
        <picture>
            <source itemprop='url' type='image/webp' data-srcset='/images/venues/medium/220_663_studio-54.webp'>
            <img data-src="/images/venues/medium/220_663_studio-54.jpg"/>
        </picture>
        </a>
    </div>
    <div>
        <h3><a href='http://www.example.com/venues/220/studio-54'>
        <span itemprop="name">Studio-54</span></a></h3>
        <div itemprop='address' itemscope itemtype='http://schema.org/PostalAddress'>
        <a itemprop='addressLocality' href="http://www.example.com/vendors/venues/c/netherlands/north-holland/amsterdam">Amsterdam</a>, <span itemprop='addressRegion'>North-Holland</span>
        </div>
    </div>
</div>
</li>

1 Ответ

0 голосов
/ 03 сентября 2018

См. Раздел Значения в спецификации микроданных (рабочий проект):

  • При добавлении атрибута itemprop к элементу img или source микроданные используют значение атрибута src.

  • При добавлении атрибута itemprop к элементу picture микроданные используют textContent элемента.

В вашем случае вам может потребоваться добавить атрибут src к элементу img (который в любом случае требуется HTML, в дополнение к атрибуту alt) и переместить itemprop из source (для которого требуется атрибут srcset) до img:

<img itemprop="url" src="/images/venues/medium/220_663_studio-54.jpg" data-src="/images/venues/medium/220_663_studio-54.jpg" alt="" />

Если вы хотите сохранить такие атрибуты (например, для отложенной загрузки), вы можете использовать элемент link для предоставления URL-адреса изображения (браузеры не загружают это):

<div itemprop='image' itemscope itemtype='http://schema.org/ImageObject'>

  <a href='http://www.example.com/venues/220/studio-54'>
    <picture>
      <source type='image/webp' data-srcset='/images/venues/medium/220_663_studio-54.webp'>
      <img data-src='/images/venues/medium/220_663_studio-54.jpg' />
    </picture>
  </a>

  <link itemprop='url' href='/images/venues/medium/220_663_studio-54.webp' />

</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...