JSON-LD

JSON-LD — это способ разметки, при котором данные передаются с помощью объектов связанных данныхarrow-up-right (Linked Data, LD).Данные в формате JSON-LD описываются набором разделенных запятыми пар ключ-значение. Формат предусматривает зарезервированные ключи, с помощью которых можно определять контекст описания или связывать объекты различным образом. Например, @context определяет словарь объектов (в данном случае — Schema.org), а @type — тип описываемой сущности.Для корректной передачи информации следует настроить следующие сущности:

Как разметить материал:

Тип материала

Для передачи типа необходимо воспользоваться полями schema.org/Articlearrow-up-right, schema.org/NewsArticlearrow-up-right, schema.org/BlogPostingarrow-up-right или schema.org/WebPagearrow-up-right.

  • Article — общая разметка, подходящая всем текстовым материалам;

  • NewsArticle — отдельная разметка для новостей или дополнительных материалов;

  • BlogPosting — разметка для статьи из блога;

  • WebPage — общая разметка, подходящая к любому материалу.

Пример:

<script type="application/ld+json"> { "@context":"https://schema.orgarrow-up-right", "@type":"Article", ... } </script>

Идентификатор материала

Для передачи идентификатора материала необходимо настроить передачу поля identifierarrow-up-right. При этом значение propertyID должно быть mediaId или 'Article id'. Идентификатор должен содержать более 3х символов.

Пример:

"identifier": { "@type": "PropertyValue", "propertyID": "mediaId", // ожидается именно такое название "value": "entity_303003" // изменяемое значение }

Заголовок материала

Для передачи заголовка материала необходимо настроить передачу полей headlinearrow-up-right или alternativeHeadlinearrow-up-right.

Пример:

"name":"«Желательно получить Македонию». Даже Карпин хочет эту команду в соперники по стыкам"

Пример:

"headline":"«Желательно получить Македонию». Даже Карпин хочет эту команду в соперники по стыкам""headline":"«Желательно получить Македонию». Даже Карпин хочет эту команду в соперники по стыкам"

Url материала / контейнер

Для передачи url материала и контейнера можно использовать поле urlarrow-up-right или mainEntityOfPagearrow-up-right​В поле url после знака # можно передать id контейнера, где размещается текст материала. В этом случае размер материала будет вычисляться более корректно. Это влияет на параметры доскола и дочтения.

Пример:

"url":"https://www.championat.com/football/article-4522451-s-kem-sygraet-sbornaya-rossii-v-stykovyh-matchah-chm-2022-severnaya-makedoniya-vozmozhnyj-sopernik-komandy-karpina.html#article_id"

Пример:

"mainEntityOfPage":{ "@type":"WebPage", "@id":"https://www.championat.com/football/article-4522451-s-kem-sygraet-sbornaya-rossii-v-stykovyh-matchah-chm-2022-severnaya-makedoniya-vozmozhnyj-sopernik-komandy-karpina.html#article_id" }

Дата публикации

Для передачи даты публикации необходимо использовать поле datePublishedarrow-up-right. Разметка передается в формате ISO 8601arrow-up-right.

Пример:

"datePublished":"2021-11-24T14:00:06+03:00"

Дата модификации

Поля datePublishedarrow-up-right (обязательное) и дата изменения dateModifiedarrow-up-right (опциональное). Разметка поддерживает формат ISO 8601arrow-up-right.

Пример:

"dateModified":"2021-11-24T14:00:07+03:00"

Рубрика

Для передачи данных по рубрикам можно использовать breadcrumbListarrow-up-right или articleSectionarrow-up-right. Рубрики отражают иерархическую структуру сайта. Рубрика может быть узкой и находиться внутри широкой темы. Определите несколько сущностей типа ListItemarrow-up-right внутри класса, задайте им свойства itemListElementarrow-up-right, которые описывают текущую и более широкие рубрики. Рубрикой данного материала будет считаться значение сущности с наибольшим position.

Пример:

"articleSection":"Футбол"

Пример:

<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "item": { "@id": "https://site.ru/fashion", "name": "Мода" } }, { "@type": "ListItem", "position": 2, "item": { "@id": "https://site.ru/fashion/boho", "name": "Стиль бохо" } }, { "@type": "ListItem", "position": 3, "item": { "@id": "https://site.ru/fashion/boho/woven-bags", "name": "Плетеные сумки" } } ]} </script>

Автор

Для передачи автора можно воспользоваться полями authorarrow-up-right или personarrow-up-right. Если их несколько, укажите каждого в отдельном теге.

Пример:

"author":{ "@type":"Person", "name":"Павел Прохоров", "url":"https://www.championat.com/authors/3889/1.htmlarrow-up-right" }

Аннотация материала (вводный абзац)

Для передачи аннотации материала используется поле abstractarrow-up-right.

Пример:

"description": "Летнее межсезонье в Российской Премьер-Лиге получилось мимолётным, многие команды уже вышли из отпуска и начали подготовку к новому розыгрышу. Футболисты попытались воспользоваться этой паузой максимально продуктивно."

Текст

Для передачи текста материала используется поле articleBodyarrow-up-right. Текст статьи, должен содержать более 500 знаком и быть в единственном экземпляре на странице.

Пример:

<p itemprop="articleBody">Летнее межсезонье в Российской Премьер-Лиге получилось мимолётным, многие команды уже вышли из отпуска и начали подготовку к новому розыгрышу. Футболисты попытались воспользоваться этой паузой максимально продуктивно.</p>

Изображение

Для передачи изображений можно использовать поле ImageObjectarrow-up-right Важно не само описание изображений, а количество элементов в массиве image.

Пример:

"image":[{ "@type":"ImageObject", "representativeOfPage":"true", "url":"https://img.championat.com/c/1350x759/news/big/x/o/makedoniya-vozmozhnyj-sopernik-rossii-obzor_16376953941446019056.jpg", "width":1350, "height":759 }]

Last updated