Нужна помощь в добавлении микроданных к событию

#schema.org #microdata #google-rich-snippets

#schema.org #микроданные #google-rich-snippets

Вопрос:

Я изо всех сил пытаюсь правильно добавлять микроданные к событиям на моей странице. Инструмент тестирования структурированных данных Google может считывать данные, но он не отображает их правильно. Я запутался.

Я пытаюсь пометить его для спортивной лиги, в которой за одну ночь проводится одно событие, состоящее из трех игр, проходящих в одном и том же месте.

 <div itemscope itemtype="http://schema.org/SportsEvent"><!--microdata week 1 event-->
<meta itemprop="name" content="Week 1 Lacrosse Games">
<meta itemprop="location" content="Street, Town, NY">
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-3"> <!--column-->
<h3>Week 1<br><span itemprop="startDate" content="2014-06-27T18:00">Friday, June 27</span></h3>
<br>
<div itemprop="subEvent" itemscope itemtype="http://schema.org/subEvent">
<h4><span itemprop="name">Game 1</span> - 6:00 PM</h4>
<p><span itemprop="performer">Team 1 vs.Team 2</span></p>
</div>
<div itemprop="subEvent" itemscope itemtype="http://schema.org/subEvent">
<h4><span itemprop="name">Game 2</span> - 7:00 PM</h4>
<p><span itemprop="performer">Team 3 vs. Team 4</span></p>
</div>
<div itemprop="subEvent" itemscope itemtype="http://schema.org/subEvent">
<h4><span itemprop="name">Game 3</span> - 8:00 PM</h4>
<p><span itemprop="performer">Team 5 vs. Team 6</span></p>
</div>
</div><!--end column-->
</div><!--microdata week 1 event-->
 

Комментарии:

1. Что именно вы имеете в виду, говоря «неправильно отображается»?

2. Я не видел вашего комментария. Если вы посмотрите на мой ответ ниже, у Google есть инструмент для проверки того, как микроданные будут отображаться в результатах поиска. Он также сообщает вам, можно ли его прочитать или нет. Кажется, это правильно понято, но в разделе «предварительный просмотр» оно не отображается.

Ответ №1:

Я не уверен, какие у вас проблемы с отображением расширенных фрагментов, но я заметил пару вещей, которые я бы рекомендовал вам изменить. Поскольку все эти события являются спортивными событиями, я бы, вероятно, рекомендовал вам использовать тип SportsEvent для них всех. Вам также необходимо указать все время начала в формате ISO 8601. Кроме того, ожидаемое значение свойства «исполнитель» — это либо Организация, либо лицо, а SportsTeam является расширением типа Organizaton. Поэтому я бы рекомендовал использовать это свойство дважды в каждом событии, чтобы вы могли указать две разные команды, которые играют, вместе с типом SportsTeam, вот так:

 <div itemprop="subEvent" itemscope itemtype="http://schema.org/SportsEvent">
<h4><span itemprop="name">Game 1</span> - <meta itemprop="startDate" content="2014-06-27T18:00" />6:00 PM</h4>
<p><span itemprop="performer" itemscope itemtype="http://schema.org/SportsTeam">
<span itemprop="name">Team 1</span></span> vs</p>
<p><span itemprop="performer" itemscope itemtype="http://schema.org/SportsTeam">
<span itemprop="name">Team 2</span></span></p>
</div>
 

Надеюсь, это поможет.

Комментарии:

1. Спасибо. У подэтапов теперь есть отдельные исполнители. Проще предоставить две ссылки, чтобы показать, о чем я говорю. Вот инструмент обработки данных с моей страницей . Он читает, без предварительного просмотра. Вот инструмент для обработки данных с рабочей страницей . Он считывает и отображает предварительный просмотр.

Ответ №2:

Поскольку я использовал вложенные события, Google требовал, чтобы для каждого события вызывался URL-адрес микроданных. У них есть правило, которое гласит, что если у вас есть несколько событий на одной странице, вам нужно указать URL для каждого из них.

Поскольку я использовал одну и ту же страницу для всех из них, я присвоил каждому вложенному событию уникальный идентификатор и связал этот идентификатор с адресом.