Микроразметка товара с примерами

пример микроразметки

В статье разобраны неочевидные случаи применения микроразметки Product с примерами использования в формате JSON-LD на основе рекомендаций Google. Причина в том, что документация Яндекса по этому вопросу невероятно скудна, а «платоны» отказываются помогать:

скриншот яндекс не поможет с микроразметкой

Два варианта разметки Product

Внутри микроразметки «для товаров», фактически присутствуют два под-варианта, в зависимости от функционала страницы:

  • Если на странице товар продаётся непосредственно (можно «положить в корзину и оплатить»), то такой вариант разметки называется «информация об ассортименте» (Merchant listings).
  • Если товар на странице купить непосредственно нельзя, то такая микроразметка называется «данные о товаре» (Product snippets).

Для этих вариантов даже обязательные поля выглядят по-разному.

Для целей статьи нам нужно знать, что разметка «ассортимента» более детальная и включает в себя «данные о товаре».

Микроразметка вариативного товара

Допустим, у нас на странице присутствует несколько вариантов одного и того же товара (цвета, размеры и т.п.). Например, 27 вариантов «букета роз» (отличается числом цветов в букете) с диапазоном цен от 1490 до 13000 рублей. Важно, что все букеты мы делаем сами, то есть наш интернет-магазин.

Казалось бы, в этой ситуации лучше всего использовать тип AggregateOffer в поле «offers».

Однако, Google прямо запрещает это:

скриншот описания микроразметки AggregateOffer

Кроме этого, эксперты из комьюнити Google «пугают» возможными санкциями:

скриншот санкции за несоответствие микроразметки

Санкции для микроразметки означают, что разметка конкретной страницы будет проигнорирована Google. На ранжирование это никак не повлияет.

из твитора John Mueller

Как же, в нашем случае, указать несколько цен для товарного предложения типа Offer?

Внимательное изучение показывает, что кроме очевидного поля «price», у типа Offer есть структурированное поле «priceSpecification». Им-то мы и воспользуемся, заполнив его для дочернего типа UnitPriceSpecification (типа, «ЦенаЗаШтуку»)

Вот — пример нужной микроразметки:

<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "Product",
  "@id":"#buketRoz",	
  "name": "Букет роз",
  "image":["https://example.com/image1.jpg",
    "https://example.com/image2.jpg",
    "https://example.com/image3.jpg"
   ],
  "itemCondition": "http://schema.org/NewCondition",
  "description":"Хотите создать незабываемый момент и подарить букет, который запомнится навсегда? Тогда вам нужно купить букет роз",
  "manufacturer": {"@id":"#NashaFirma"},
  "brand": {
    "@type": "Brand",
    "url":"https://flowers.ru/",
    "name": "Цветастые цветы"
   },
  "aggregateRating": {"@id":"#NashRating"},
  "offers": {
    "@type": "Offer",
    "priceCurrency": "RUB",
    "availability": "https://schema.org/InStock",    
    "seller": {"@id":"#NashaFirma" },
    "price" : 1490,
    "priceValidUntil":"2099-12-31",
    "priceSpecification" : {
      "@type": "UnitPriceSpecification",
      "priceType":"https://schema.org/ListPrice",
      "validThrough": "2099-12-31",
      "priceCurrency": "RUB",
      "minPrice": 1490,
      "maxPrice": 13000
    },
    "hasMerchantReturnPolicy": {"@id":"#NashVozvrat"},
    "shippingDetails": {"@id":"#NashaDostavka"}    
  }
}
</script>

в разметке подразумевается, что описание компании, её рейтинг, политика возврата и условия доставки созданы с нужными полями @id в другом месте.

Разбирался в применении правильной микроразметки Алексей, SEO-падаван.

Источники, использованные при написании статьи:

  1. Документация Google по структурированным данным на русском
  2. Инструмент проверки расширенных результатов Google
  3. Словарь микроразметки shema.org с валидатором
  4. Перевод schema.org на русский: ruschema.org
  5. Форум сообщества Google
  6. Твиттер (или, его уже надо Х называть?) John «it depends» Mueller

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *