Почему это Schema.org неправильная разметка микроданных?


У меня есть страница, на которой перечислены несколько событий в таблице, поэтому каждое из них задано как отдельное событие в разметке микроданных, как показано ниже:

<div itemscope itemtype="https://schema.org/Event">
<tr>
    <meta itemprop="name" content="Really Cool Event">
    <td itemprop="location" itemscope itemtype="https://schema.org/Place">
    <a href="#"><span itemprop="name">Hooville</span></a>
         <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
         <meta itemprop="addressLocality" content="Hootown, USA">
       </div>
    </td>
    <td><span itemprop="startDate" content="2015-12-25">25th</span> - <span itemprop="endDate" content="2015-12-30">30th December 2015</span></td>
    <td itemprop="offers" itemscope itemtype="https://schema.org/Offer" id="price" class="text-success">
        <span itemprop="price" content="1000"><strong>$1000</strong></span>
    </td>
</tr>
</div>

Однако тестер структурированных данных Google не может найти местоположение, дату начала и предложение для мероприятия. Он прекрасно находит Место, но отделяет его от События. Мне кажется, что все они вложены в Событие div, так в чем же дело?

Author: ElendilTheTall, 2015-11-24

2 answers

Ваша разметка таблицы недопустима (div не может содержать tr, tr не может содержать meta).

Если вы это исправите, инструмент тестирования Google, похоже, распознает это нормально.

Быстрый способ проверить это (но вы не должны публиковать таким образом): замените элементы tr и td на div.

 1
Author: unor, 2015-11-24 11:43:03

Для проверки он должен выглядеть следующим образом:

<div itemscope itemtype="https://schema.org/Event">
<div>
<meta itemprop="name" content="your event's name" >
<link itemprop="url" href="http://www.example.com/your-events-website.html">
    <meta itemprop="name" content="Really Cool Event">
    <div itemprop="location" itemscope itemtype="https://schema.org/Place">
    <a href="#"><span itemprop="name">Hooville</span></a>
         <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
         <meta itemprop="addressLocality" content="Hootown, USA">
       </div>
    </div>
    <div><span itemprop="startDate" content="2015-12-25">25th</span> - <span itemprop="endDate" content="2015-12-30">30th December 2015</span></div>
    <div itemprop="offers" itemscope itemtype="https://schema.org/Offer" id="price" class="text-success">
    <meta itemprop="name" content="your offer's name" >
    <link itemprop="url" href="http://www.example.com/your-offers-website.html">
        <span itemprop="price" content="1000"><strong>$1000</strong></span>
    </div>
</div>
</div>
 0
Author: Evgeniy, 2015-11-24 11:52:50