Короткий ответ: перед запросом переиндексации меню проверьте пять свойств Schema.org Restaurant по отдельности — menu, hasMenuItem, имя и описание каждого MenuItem, блок offers с ценой и валютой, а также корректность необязательного suitableForDiet. Отсутствие расширенного результата в выдаче чаще связано не с «поломанной» схемой целиком, а с конкретным пропущенным или неверно вложенным свойством, которое можно найти только построчной проверкой, а не повторной отправкой всего файла на индексацию.
Почему разметка меню требует отдельного аудита
Многие материалы о структурированных данных ресторана сосредоточены на общих полях LocalBusiness — адресе, часах работы, телефоне. Меню устроено иначе: это вложенная иерархия объектов Menu → MenuSection → MenuItem, где каждый уровень может содержать ошибку независимо от остальных. Если ресторан просто скопировал шаблон разметки без проверки вложенности, часть свойств может физически присутствовать в коде, но не быть связана с родительским объектом Restaurant корректно.
Важно разделять два вопроса, которые часто путают. Первый — присутствует ли свойство в разметке и валидно ли оно синтаксически. Второй — решит ли конкретный поисковый продукт показать на основе этой разметки расширенный элемент выдачи. Аудит, описанный ниже, отвечает только на первый вопрос: это необходимое, но не достаточное условие для второго.
Практический фреймворк: аудит меню по пяти свойствам
Ниже — рабочая структура, которую можно назвать «аудит меню по пяти свойствам» (5С-аудит: menu, hasMenuItem, name, offers, suitableForDiet). Она построена вокруг словаря schema.org/Restaurant и не требует специализированных инструментов — только доступ к исходному коду страницы меню.
| Свойство | Где применяется | Статус | Что проверить |
|---|---|---|---|
| menu | Restaurant | Основное | Указывает ли на объект типа Menu или на прямую ссылку/текст меню; нет ли дублирующих противоречивых значений на разных страницах сайта |
| hasMenuItem | Menu, MenuSection | Основное | Перечислены ли реальные MenuSection или MenuItem, а не пустой массив или заглушка |
| name (в MenuItem) | MenuItem | Основное | Совпадает ли название блюда в разметке с названием, которое видит посетитель на странице |
| offers / price / priceCurrency | MenuItem | Условно основное | Указана ли валюта; не устарела ли цена относительно фактического меню; нет ли смешения диапазонов цен без явного указания |
| suitableForDiet | MenuItem | Необязательное | Используется ли только там, где информация проверена; соответствует ли значение перечислению RestrictedDiet |
Пошаговый порядок проверки
- Откройте исходный код страницы с меню и найдите блок JSON-LD или микроразметку, относящуюся к Restaurant.
- Проверьте, что свойство
menuдействительно указывает на структуру, а не на строку с текстом «см. меню на сайте». - Для каждого MenuSection убедитесь, что
hasMenuItemзаполнен и не обрывается на первом блюде из нескольких десятков. - Сверьте название каждого MenuItem с актуальным бумажным или экранным меню — расхождения не всегда критичны технически, но искажают факт.
- Проверьте блок offers: присутствует ли priceCurrency отдельно от price, и не указана ли цена, которая уже неактуальна.
- Если используется suitableForDiet, убедитесь, что значение подтверждено кухней, а не добавлено «на всякий случай» ради видимости в выдаче.
- Только после прохождения всех шести пунктов имеет смысл запрашивать переиндексацию страницы через инструменты для вебмастеров соответствующей поисковой системы.
Измерение результата
Проверка структурированных данных и появление расширенного результата — разные метрики, и их нельзя объединять в одном отчёте без пояснений. Для аудита разметки достаточно зафиксировать: количество свойств из таблицы выше, присутствующих корректно, до и после исправлений; дату запроса переиндексации; и дату, когда разметка была валидирована инструментом проверки структурированных данных (без предположений о том, когда и появится ли визуальное изменение в выдаче).
Отдельно стоит фиксировать сам факт валидности JSON-LD — то есть отсутствие синтаксических ошибок парсинга — и отдельно факт полноты бизнес-данных (актуальные цены, реальные названия блюд). Смешивание этих двух срезов в один вывод «разметка работает» или «разметка не работает» усложняет диагностику при следующей проверке.
Ограничения такого аудита
- Наличие всех пяти свойств из фреймворка не обязывает ни одну поисковую систему показать расширенный результат — решение остаётся на стороне конкретного продукта и может меняться без уведомления.
- Schema.org описывает доступный словарь, а не обязательный набор полей: не все свойства нужны каждому ресторану, и избыточная разметка не улучшает её достоверность.
- Указание suitableForDiet — это заявление о составе блюда, которое выходит за рамки технической корректности разметки; ошибочное или устаревшее значение может иметь последствия для доверия гостей и ответственности заведения, а не только для видимости в поиске.
- Этот чек-лист не измеряет и не предсказывает трафик, позиции в выдаче, частоту цитирования в ИИ-ответах или снижение количества неявок — такие связи не подтверждены и не входят в область данного аудита.
Где здесь может быть уместен ChefNet
ChefNet развивает продукты для ресторанного дискавери и операционных задач, в том числе направления, связанные со структурированным описанием меню. Поскольку набор доступных функций может меняться по мере разработки, операторам стоит самостоятельно уточнять у команды ChefNet, какие именно возможности по работе со структурированными данными меню доступны на текущий момент, прежде чем закладывать их в план внедрения разметки.
Артефакт: контрольный лист аудита разметки меню (Menu Structured Data Rich Results Audit Checklist)
Пять свойств из основной таблицы задают, «что» проверять. Ниже — операционный контрольный лист, который задаёт «как» и «кто» проверяет, чтобы аудит можно было повторять при каждом обновлении меню, а не проводить один раз перед первым запросом переиндексации.
| № | Проверка | Источник проверки | Ответственный | Периодичность |
|---|---|---|---|---|
| 1 | JSON-LD или микроразметка парсится без синтаксических ошибок | Инструмент проверки структурированных данных | Технический специалист | При каждом изменении кода страницы |
| 2 | Свойство menu ведёт к структуре, а не к тексту-заглушке | Исходный код страницы | Технический специалист | При изменении шаблона |
| 3 | hasMenuItem содержит все актуальные позиции раздела | Сверка с фактическим меню | Менеджер зала или шеф | При обновлении меню |
| 4 | Название и описание MenuItem совпадают с тем, что видит гость | Ручная сверка | Менеджер зала | При обновлении меню |
| 5 | offers содержит price и priceCurrency раздельно и без устаревших значений | Прайс-лист кухни | Менеджер зала | При изменении цены |
| 6 | suitableForDiet используется только для подтверждённых кухней позиций | Подтверждение шеф-повара | Шеф-повар | При изменении рецептуры |
| 7 | Дата последней успешной проверки зафиксирована в журнале аудита | Внутренний журнал | Ответственный за сайт | После каждого прохождения пунктов 1–6 |
Пограничные случаи, которые контрольный лист должен явно учитывать
- Сезонное или сменяемое меню. Если позиции меняются чаще, чем обновляется разметка, устаревший
hasMenuItemможет формально проходить синтаксическую проверку, но не соответствовать фактическому ассортименту. - Меню только в формате PDF или изображения. Такой файл не может быть напрямую источником для
MenuItem; свойствоmenuв этом случае технически валидно, только если ссылка корректно оформлена как объект или URL, а не как встроенное изображение без текстового аналога. - Меню, встроенное через сторонний сервис доставки или бронирования. Если раздел меню на сайте фактически рендерится сторонним виджетом, разметка Restaurant на основной странице может не иметь доступа к актуальным данным этого виджета — это стоит проверять отдельно, а не полагаться на то, что виджет автоматически синхронизирован со schema.org разметкой сайта.
- Многоязычные версии меню. Название и описание MenuItem на разных языковых версиях страницы должны соответствовать разметке именно той языковой версии, к которой они привязаны; перенос значений с одной локали на другую без проверки создаёт несоответствие между видимым текстом и разметкой.
- Комбо и сет-меню. Позиции, состоящие из нескольких блюд, требуют решения, как их описывать — как один MenuItem с общей ценой или как MenuSection с вложенными MenuItem; оба варианта допустимы в словаре schema.org/Restaurant, но выбор должен быть последовательным по всему сайту.
- Позиции без фиксированной цены («цена по запросу»). Блок offers в этом случае не должен содержать произвольное числовое значение цены — лучше не указывать offers для такой позиции, чем указывать недостоверную цену ради формальной полноты разметки.
Порядок действий после обнаружения ошибок
- Исправьте разметку в исходном коде, а не только в кэшированной версии страницы.
- Повторно прогоните исправленный код через инструмент проверки структурированных данных и зафиксируйте отсутствие синтаксических ошибок.
- Сверьте содержимое построчно с актуальным меню согласно контрольному листу выше.
- Запишите в журнал аудита дату исправления, перечень изменённых свойств и имя ответственного.
- Если сайт использует промежуточную (staging) версию, протестируйте разметку там до публикации на боевом домене.
- Только после прохождения всех пунктов запрашивайте переиндексацию через инструменты для вебмастеров — сама по себе повторная отправка страницы не заменяет проверку по пунктам 1–5.
Как фиксировать состояние во времени, а не разово
Для сети из нескольких точек или сайта с отдельными страницами меню по филиалам разовая проверка одной страницы не отражает состояние остальных. Рабочий способ — вести журнал по каждой странице меню отдельно, с колонками: URL страницы, дата последней проверки, количество из семи пунктов контрольного листа, пройденных без замечаний, и дата последнего изменения меню в системе учёта кухни. Такой журнал позволяет увидеть, какие страницы не проверялись дольше остальных, вместо того чтобы полагаться на общее впечатление о «состоянии разметки сайта».
Дополнительные ограничения, которые стоит держать в поле зрения
- Прохождение всех пунктов контрольного листа фиксирует состояние разметки на конкретную дату; последующее изменение меню кухней без параллельного обновления кода снова делает разметку неактуальной, даже если сама структура кода не менялась.
- Словарь schema.org может со временем расширяться или уточняться; контрольный лист, основанный на текущем перечне свойств Restaurant, стоит периодически сверять с актуальной версией словаря, а не считать зафиксированным раз и навсегда.
- Синхронизация данных между несколькими языковыми версиями или филиалами не гарантируется автоматически самим фактом наличия разметки — это остаётся отдельной операционной задачей, не решаемой на уровне JSON-LD.
- Ни один пункт контрольного листа не задаёт срок, в течение которого поисковая система обработает повторный запрос индексации или изменит отображение результата.
Первичные источники
FAQ
Гарантирует ли добавление разметки меню Schema.org появление расширенного результата?
Нет. Структурированные данные лишь описывают факты о меню в машиночитаемом словаре, а решение о показе расширенного результата принимает конкретный поисковый продукт по собственным правилам, на которые оператор ресторана не влияет. Корректная разметка убирает техническое препятствие, но не обязывает платформу отображать какую-либо функцию.
Какое свойство Schema.org должно перечислять отдельные блюда?
Свойство menu у типа Restaurant может указывать на объект Menu, который через hasMenuItem перечисляет MenuSection или MenuItem. Каждый MenuItem должен иметь собственное name и, где применимо, блок offers с price и priceCurrency — согласно словарю schema.org/Restaurant.
Обязательно ли указывать suitableForDiet для каждого блюда?
Нет, это необязательное свойство. suitableForDiet описывает диетические ограничения — например, вегетарианское или безглютеновое — через перечисление RestrictedDiet. Указывать его стоит только при наличии точной проверенной информации, поскольку заявления о составе блюда несут ответственность, выходящую за рамки корректности разметки.
Редакционное раскрытие: ChefNet публикует это руководство и разрабатывает продукты для поиска ресторанов и ресторанных операций. Общие рекомендации отделены от заявлений о продукте. Возможности могут меняться по мере развития пилотных проектов. Опубликовано 2026-08-02.