Описание элементов hRecipe
Общие требования
Чтобы рецепты с вашего сайта могли быть извлечены Яндексом, на одной странице должен находиться только один рецепт — элемент корневого класса hrecipe
, и этот рецепт должен являться основным содержанием страницы. Остальные элементы (свойства рецепта) располагаются внутри корневого.
Данные, содержащиеся в рецепте, должны полностью отображаться на странице и быть видимы посетителю сайта.
Яндекс обрабатывает как стандартные свойства формата, так и собственные расширения.
Обязательные элементы
Чтобы данные о рецептах могли быть использованы Яндексом для улучшения сниппета, должны быть переданы следующие обязательные свойства:
fn
Название рецепта или блюда.
Значением этого свойства может быть только текст.
Пример:
<span class="fn">Курица в пиве с рисом</span>
ingredient
Ингредиент и его объем/количество.
Рецепт может содержать один или несколько ингредиентов. Классом ingredient
следует пометить каждый ингредиент блюда. Значением этого свойства может быть как простой текст, так и HTML-код.
Свойство может содержать следующие вложенные свойства:
name
— название продукта (это свойство не предусмотрено стандартом hRecipe).type
иvalue
— единица измерения и количество единиц.amount
— количество в произвольном формате (это свойство не предусмотрено стандартом hRecipe). Используется вместоtype
иvalue
.
Примеры:
<span class="ingredient">
<span class="amount">1</span>
<span class="name">курица</span>
</span>
<span class="ingredient">
<span class="value">0.5</span>
<span class="type">л</span>
<span class="name">пива</span>
</span>
Рекомендуемые элементы
Кроме обязательных свойств, Яндекс обрабатывает следующие свойства формата hRecipe:
instructions
Инструкции по приготовлению блюда.
В рецепте может быть не более одного элемента класса instructions
. Значением этого свойства может быть как простой текст, так и HTML-код.
Мы рекомендуем включать в это свойство только непосредственно сами указания, без предваряющего их заголовка (например, «Способ приготовления»).
Отдельные пункты инструкции можно пометить классом instruction
. Вложенное свойство instruction
не предусмотрено стандартом hRecipe, оно добавлено Яндексом в качестве расширения.
Пример:
<ul class="instructions">
<li class="instruction"> Курицу нарезать на кусочки, выложить в форму для запекания,
посолить, поперчить, добавить специи по вкусу.</li>
<li class="instruction">Курицу залить пивом, поставить в духовку.</li>
<li class="instruction">Жарить при температуре 180 градусов в течение 40-45 минут.</li>
</ul>
Допускается вкладывать внутрь свойства instructions
одно или несколько свойств photo
(а также свойство result-photo
).
Пример:
<ul class="instructions">
<li>Курицу нарезать на кусочки, выложить в форму для запекания,
посолить, поперчить, добавить специи по вкусу.<br>
<img class="photo" src="images/step1.jpg" alt="Нарезать на кусочки">
</img>
</li>
<li>Курицу залить пивом, поставить в духовку.<br>
<img class="photo" src="images/step2.jpg" alt="Залить пивом">
</img>
</li>
<li>Жарить при температуре 180 градусов в течение 40-45 минут.<br>
<img class="photo result-photo"
src="images/step3.jpg" alt="Приятного аппетита!"></img>
</li>
</ul>
Описание свойств photo
и result-photo
см. ниже.
yield
Количество порций, получающихся из указанного объема продуктов. В рецепте может быть не более одного элемента класса yield
. Значением этого свойства может быть только текст.
Пример:
<span>Блюдо рассчитано на <span class="yield">3 человек</span>.</span>
duration
Длительность приготовления блюда. Значением этого свойства должна быть строка в формате ISO 8601.
Например:
<span>
Общее время приготовления составляет приблизительно
<span class="duration">1 час</span>.
</span>
<span class="duration"><span class="value-title" title="PT1H30M"> </span>полтора часа</span>
photo и result-photo
Фотография готового блюда или этапа приготовления. Рекомендуем указать данные поля для формирования улучшенного сниппета.
В рецепте может быть несколько элементов класса photo
. Свойство photo
может быть подчинено либо непосредственно корневому классу hrecipe
, либо свойству instructions
. Значением свойства является значение атрибута src
HTML-элемента <img>
.
Если в рецепте есть один или несколько элементов класса photo
, один из них (содержащий фотографию готового блюда) должен быть дополнительно помечен также классом result-photo
. Свойство result-photo
не предусмотрено стандартом hRecipe, оно добавлено Яндексом в качестве расширения.
Пример использования свойств photo
и result-photo
приведен в описании свойства instructions
.
author
Автор рецепта.
В рецепте может быть несколько элементов класса author
. Значением этого свойства может быть текст или карточка в формате hCard.
Примеры:
<span>
Автор: <span class="author">Иванов</span>
</span>
<span>
Автор:
<span class="author vcard">
<a class="fn url" href="http://ivanov.narod.ru/">Иванов</a>
</span>
</span>
nutrition
Энергетическая или пищевая ценность блюда, то есть содержание калорий, белков, жиров, углеводов, витаминов и т. д.
В рецепте может быть несколько элементов класса nutrition
. Свойство может содержать следующие вложенные свойства, не предусмотренные стандартом hRecipe, но рекомендуемые Яндексом:
calories
— калорийность;fat
— жиры;saturatedFat
— насыщенные жиры;unsaturatedFat
— ненасыщенные жиры;carbohydrates
— углеводы;sugar
— сахар;fiber
— клетчатка;protein
— белки;cholesterol
— холестерин;servingSize
— размер порции, для которой указывается пищевая/энергетическая ценность.
Например:
<div>
100 г блюда содержат
<span class="nutrition">
Энергетическая ценность:
<span class="calories">240 ккал</span>
Белки:
<span class="protein">18 г.</span>
Жиры:
<span class="fat">10 г.</span>
Углеводы:
<span class="carbohydrates">70 г.</span>
</span>
</div>
Расширения
Вы можете также включить в рецепт следующие свойства, не предусмотренные стандартом hRecipe, но рекомендуемые Яндексом:
category
Тип блюда.
В рецепте может быть только один элемент класса category
. Значением этого свойства может быть только текст.
Пример:
<span class="category">Горячее блюдо</span>
sub-category
Подтип блюда.
В рецепте может быть не более одного элемента класса sub-category
. Значением этого свойства может быть только текст.
Пример:
<div>
<span class="category">Горячее</span>
<span class="sub-category">блюдо из птицы</span>
</div>
cuisine-type
Национальная кухня, к которой относится блюдо.
В рецепте может быть не более одного элемента класса cuisine-type
. Значением этого свойства может быть только текст.
Пример:
<div class="cuisine-type">Рецепт люксембургской кухни</div>
weight
Вес готового блюда.
В рецепте может быть не более одного элемента класса weight
. Значением этого свойства может быть только текст.
Пример:
<div>Вес блюда составит <span class="weight">1,5 кг</span></div>