Открытие Schema.orgЧасов в ‹time›

Я пытаюсь создать определение schema.org для часов работы, которое проверяется в инструменте тестирования расширенных фрагментов кода Google.

Этой разметкой я хочу определить, что по понедельникам магазин открыт с 11: 00-22: 00.

<time datetime="Mo 11:00-22:00" itemprop="openingHours">11:00-22:00</time>

Однако инструмент тестирования расширенного описания веб-страниц отображает:

Предупреждение: часы работы относятся к формату даты и времени, отличному от ISO 8601.

Schema.org определяет:

Часы работы для бизнеса. Часы работы могут быть указаны в виде недельного диапазона времени, начиная с дней, а затем раз в день. Несколько дней можно указать через запятую ',', разделяя каждый день. Дневной или временной диапазон указывается через дефис "-".

  • Дни указываются с помощью следующих двухбуквенных комбинаций: Пн, Вт, Ср, Чт, Пт, Сб, Вс.

  • Время указано с использованием 24:00 часов. Например, 15:00 указано как 15:00.

  • Вот пример: <time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time>


person ninsky    schedule 16.11.2011    source источник


Ответы (6)


Что вы также можете сделать, так это прикрепить более подробный шаблон часов работы из GoodRelations к узлу schema.org:

<div itemscope itemtype="http://schema.org/Place" itemid="#store">
  <link itemprop="http://www.w3.org/1999/02/22-rdf-syntax-ns#type" 
        href="http://purl.org/goodrelations/v1#Location" />
  <span itemprop="name">Hepp's Happy Burger Restaurant</span>
  <div itemprop="http://purl.org/goodrelations/v1#hasOpeningHoursSpecification" itemscope 
       itemtype="http://purl.org/goodrelations/v1#OpeningHoursSpecification">
Opening hours: Mo-Fri,
     <link itemprop="hasOpeningHoursDayOfWeek" 
           href="http://purl.org/goodrelations/v1#Monday" />
     <link itemprop="hasOpeningHoursDayOfWeek" 
           href="http://purl.org/goodrelations/v1#Tuesday" />
     <link itemprop="hasOpeningHoursDayOfWeek" 
           href="http://purl.org/goodrelations/v1#Wednesday" />
     <link itemprop="hasOpeningHoursDayOfWeek" 
           href="http://purl.org/goodrelations/v1#Thursday" />
     <link itemprop="hasOpeningHoursDayOfWeek" 
           href="http://purl.org/goodrelations/v1#Friday" />
     <meta itemprop="opens" content="08:00:00">8:00 a.m. -
     <meta itemprop="closes" content="20:00:00">8:00 p.m.
  </div>
</div>

Видеть

http://www.heppnetz.de/ontologies/goodrelations/v1.html#OpeningHoursSpecification

person Martin Hepp    schedule 31.12.2011

В то время как Google, похоже, доволен решением ptbello, validator.w3.org - нет.

Я использовал data вместо time - работает как для validator.w3.org, так и для www.google.com/webmasters/tools/richsnippets:

<data itemprop="openingHours" value="Mo-Su 07:00-22:00">7 days a week, 7 am to 22 pm</data>

(Спасибо Хикси за freenode # whatwg.)

person kamome    schedule 11.09.2014

Протестировано, работает с http://www.google.com/webmasters/tools/richsnippets

<div itemscope itemtype="http://schema.org/LocalBusiness"> 
    <time itemprop="openingHours" datetime="Mo-Su 9:00-13:00 16:00-20:00">Monday through Sunday, 9:00 - 13:00, 16:00-20:00</time>.
</div>

Проверьте http://schema.org/openingHours.

person ptbello    schedule 10.06.2014

Проблема известна (см. На сайте Schema.org на GitHub: Примеры на openHours не должны использовать 'время' элемент).

Элемент time не поддерживает синтаксис, предложенный в примерах Schema.org. Если вы хотите продолжать использовать openingHours, вы можете использовать элемент meta или data вместо time.

Но вместо openingHours вы можете использовать более выразительный openingHoursSpecification, который принимает _ 8_ (вместо строки с определенным форматом) в качестве значения.

person unor    schedule 27.06.2016

Вместо того

<time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">
Tuesdays and Thursdays 4-8pm</time>

Вы можете попробовать это:

<meta itemprop="openingHours" content="Tu,Th 16:00-20:00"/>
Tuesdays and Thursdays 4-8pm

У меня так работает.

person J. Ypma    schedule 30.11.2011
comment
Я не уверен, законно ли выбирать мета вместо времени. Если мета будет законной, возникает второй вопрос. Можно ли использовать атрибут содержимого вместо datetime? Я думаю, schema.org следует обновить спецификации ... только что разместил эту проблему в списке рассылки schema.org. - person ninsky; 09.12.2011
comment
Я думаю, что в этом случае использование ‹meta› вполне приемлемо. См. Последний пример в разделе 2.2: w3.org/TR/microdata/# основной-синтаксис - person james.garriss; 30.12.2011
comment
Я пробовал использовать мета, но Google не распознал его здесь: google.com/webmasters/tools/richsnippets - person MikeSchinkel; 14.07.2012

Я думаю, что это пример того, как Schema.org конфликтует с инструментом тестирования Rich Snippets. RSTT ожидает информацию о дате и времени в формате ISO 8601, но Schema.org допускает информацию о дате и времени в другом формате. Если вы хотите, чтобы RSTT был доволен, вам необходимо соблюдать ISO 8601; подробную информацию об этом можно найти здесь:

http://www.w3.org/TR/NOTE-datetime

Если вам просто нужно соответствие Schema.org, не беспокойтесь о предупреждающем сообщении.

Кстати, что происходит, когда вы здесь тестируете свой HTML?

http://foolip.org/microdatajs/live/

Этот сайт может быть удобным отладчиком.

person james.garriss    schedule 30.12.2011