Примеры JSON-LD для организации и местного бизнеса, хлебных крошек, товара и FAQ, куда вставить код на сайте и какие ошибки чаще всего ломают разметку.
Примеры JSON-LD для организации и местного бизнеса, хлебных крошек, товара и FAQ, куда вставить код на сайте и какие ошибки чаще всего ломают разметку.
Микроразметка JSON-LD — блок кода, в котором страница сама рассказывает поисковику, что на ней: компания с адресом и телефоном, товар с ценой, вопросы и ответы, путь по разделам сайта. Из этих данных Яндекс и Google строят расширенные сниппеты и карточки, а нейросети — ответы со ссылкой на сайт. Разберём, как сделать JSON-LD для самых нужных типов, куда вставить код и как не ошибиться.
Разметку Schema.org можно записать тремя способами: JSON-LD, микроданные (атрибуты itemprop в вёрстке) и RDFa. Подробно о синтаксисах и типах мы писали в статье про микроразметку Schema.org. На практике чаще всего выбирают JSON-LD:
Главное правило для любого формата: в разметке только то, что видно на странице. Цена в JSON-LD должна совпадать с ценой на карточке, вопросы FAQ — быть на странице текстом, рейтинг — строиться по реальным отзывам.
| Тип | Где ставить | Что даёт |
|---|---|---|
| Organization или LocalBusiness | Главная, страница контактов | Данные для карточки компании: название, логотип, телефон, адрес, часы работы |
| BreadcrumbList | Все внутренние страницы | Путь по разделам вместо длинного адреса в сниппете |
| Product | Карточки товаров | Цена, наличие и рейтинг в сниппете |
| FAQPage | Страницы с блоком вопросов и ответов | Вопросы в выдаче и понятная структура для нейросетей |
| Article | Статьи и новости | Дата, автор и картинка статьи |
Для компании без офиса для посетителей подойдёт тип Organization. Если есть точка, куда приходят клиенты, — LocalBusiness или его уточнение: Store для магазина, Restaurant для кафе, AutoRepair для автосервиса, MedicalBusiness для клиники. Для местного бизнеса важны адрес, телефон и часы работы:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Окна Плюс",
"url": "https://example.ru/",
"logo": "https://example.ru/logo.png",
"telephone": "+7 495 123-45-67",
"address": {
"@type": "PostalAddress",
"streetAddress": "ул. Ленина, 1",
"addressLocality": "Москва",
"addressCountry": "RU"
},
"openingHours": ["Mo-Fr 09:00-18:00", "Sa 10:00-16:00"],
"sameAs": ["https://vk.com/example", "https://t.me/example"]
}
</script>
В sameAs перечисляют официальные страницы компании: соцсети, карточки на картах, профиль в справочниках. Так поисковики и нейросети связывают сайт с компанией.
BreadcrumbList описывает путь от главной до текущей страницы. Позиции нумеруются с единицы, у каждого уровня, кроме последнего, должен быть адрес:
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{"@type": "ListItem", "position": 1, "name": "Главная", "item": "https://example.ru/"},
{"@type": "ListItem", "position": 2, "name": "Окна", "item": "https://example.ru/okna/"},
{"@type": "ListItem", "position": 3, "name": "Окна Rehau"}
]
}
Цепочка в разметке должна совпадать с крошками, которые видит посетитель. Обычно её выводит шаблон сайта, поэтому разметку крошек лучше один раз встроить в шаблон, а не вставлять вручную на каждую страницу.
Для товарного сниппета Google нужно название и хотя бы одно из трёх: предложение с ценой, отзыв или рейтинг. Без фото расширенного сниппета тоже не будет:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Пластиковое окно Rehau 1300×1400",
"image": "https://example.ru/img/okno.jpg",
"brand": {"@type": "Brand", "name": "Rehau"},
"offers": {
"@type": "Offer",
"price": "15900",
"priceCurrency": "RUB",
"availability": "https://schema.org/InStock"
}
}
Цена пишется числом без пробелов и знака рубля, копейки — через точку. Валюта — трёхбуквенным кодом. Рейтинг (aggregateRating) добавляйте, только если на странице есть настоящие отзывы: за выдуманные оценки поисковики снимают расширенные сниппеты.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "Сколько стоит установка окна?",
"acceptedAnswer": {"@type": "Answer", "text": "От 3 000 ₽ в зависимости от размера и этажа."}
}]
}
С 2023 года Google показывает FAQ-сниппеты в основном сайтам госорганов и медицины. Разметку всё равно стоит ставить: она помогает поисковикам и нейросетям понять, на какие вопросы отвечает страница. Вопросы и ответы должны быть на странице текстом, а не только в коде. Собрать вопросы по тексту страницы поможет генератор FAQ.
Одна страница может содержать несколько блоков JSON-LD: например, крошки, товар и организацию. Главное — не дублировать один и тот же тип с разными данными.
Писать JSON вручную долго, а одна пропущенная запятая ломает весь блок. В генераторе микроразметки JSON-LD код собирается по форме:
Генератор работает в браузере: данные никуда не отправляются, а заполненные поля запоминаются, чтобы можно было вернуться и поправить разметку. Пустые поля в код не попадают, а символ «<» в текстах экранируется, чтобы ответ с кодом не сломал страницу.
Для нового сайта — JSON-LD: его рекомендует Google, понимает Яндекс, и разметка не зависит от вёрстки. Микроданные имеет смысл оставить, если они уже встроены в шаблон и работают без ошибок.
После переобхода страницы роботом — обычно от нескольких дней до нескольких недель. Показывать ли расширенный сниппет, поисковик решает сам: разметка — условие, а не гарантия.
Да. На карточке товара обычно есть Product и BreadcrumbList, на главной — Organization. Каждый тип можно вставить отдельным блоком.
Достаточно главной или страницы контактов. На остальных страницах важнее разметка их содержимого: товара, статьи, крошек.
Вставьте адрес страницы в валидатор микроразметки: он покажет найденные типы, ошибки JSON и пропущенные обязательные свойства.
Тип запроса по выдаче Яндекса: коммерческий, информационный или смешанный
Пожалуйста, не закрывайте страницу