Представление локального бизнеса
До сих пор мы описывали услуги без конкретного места. Для локального предприятия этого недостаточно: посетителю нужно понять, куда приехать, когда принимают велосипеды и какой вход использовать. В этом уроке соберём согласованную запись о первом филиале «ВелоМастера» и покажем, как она связана с видимым содержанием сайта.
Город Новоград, Учебная улица и вся организация вымышлены. Примеры адресов предназначены только для локального чтения. Их нельзя добавлять в Яндекс Бизнес, Google Business Profile или использовать как контакт реального предприятия. В этом курсе мы не регистрируем организации и не подтверждаем права на адрес.
Одна запись о месте
Первый филиал назовём «Центр», идентификатор — center. Учебный адрес: Новоград, Учебная улица, 10. Он работает с понедельника по пятницу с 10:00 до 19:00; суббота и воскресенье закрыты. Здесь доступны все три услуги и выдача товаров. Вход расположен со стороны двора; эти условия придуманы для объяснения модели.
Информация используется на странице /locations/center/, в выборе места при записи и в общей странице контактов. Если хранить три отдельных текста, легко получить три разных расписания. Поэтому введём одну запись филиала. Общая мастерская остаётся организацией, а адрес относится к определённой точке обслуживания.
| Поле | Учебное значение | Где оно требуется |
|---|---|---|
| Идентификатор | center |
Связь услуги и записи |
| Публичное название | ВелоМастер — Центр | Страница места |
| Адрес | Новоград, Учебная улица, 10 | Контакты и описание проезда |
| Часы | Пн–Пт, 10:00–19:00 | Планирование визита |
| Возможности | Диагностика, замена, обслуживание, выдача | Выбор подходящего филиала |
Телефон не добавляем, потому что у учебного предприятия нет действующего номера. На реальном сайте показывают проверенный контакт текстом, а не только картинкой. Точно так же не следует придумывать координаты и прикреплять к модели случайную точку на карте: точность числа не заменяет подлинность адреса.
Региональность и карточка организации связаны, но не совпадают. Яндекс описывает источники определения региона и рекомендует согласовывать его с действительными условиями работы. Для магазина с доставкой география может быть шире адреса офиса. Эти сведения проверяют по реальному бизнесу; наша вымышленная запись только демонстрирует структуру. Региональность в Яндекс Вебмастере.
Видимый документ и машинное описание
На странице филиала сначала дадим обычный текст: адрес, расписание, список услуг, порядок приёмки и особенности входа. Затем можно описать те же сведения через Schema.org. Ниже — полный учебный объект JSON-LD для одного места; реальные контакты, изображения и координаты не придуманы и потому отсутствуют:
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"@id": "https://velomaster.example/locations/center/#business",
"name": "ВелоМастер — Центр",
"url": "https://velomaster.example/locations/center/",
"address": {
"@type": "PostalAddress",
"streetAddress": "Учебная улица, 10",
"addressLocality": "Новоград",
"addressCountry": "RU"
},
"openingHoursSpecification": {
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "10:00",
"closes": "19:00"
}
}
Тип LocalBusiness обозначает местное предприятие. Schema.org определяет свойства этого типа, а Google отдельно устанавливает требования своей поисковой функции. Соответствие словарю не означает прохождение требований платформы и тем более не гарантирует показ карточки. Тип LocalBusiness, правила Google для локального бизнеса.
Мы выбрали общий тип, поскольку в учебном мире не задавали более конкретную подтверждённую категорию. В действующем проекте следует рассмотреть подходящий подтип, не подменяя ремонтную мастерскую магазином только ради желаемого отображения. URL в @id служит устойчивым идентификатором сущности, а поле url указывает документ о ней; они решают разные задачи.
Расписание не включает выходные дни, когда филиал закрыт. В видимом тексте это сказано явно. Когда появится праздничное изменение, нужно обновить и страницу, и машинные данные. Не добавляйте дату окончания вымышленного режима, если неизвестно, что он действительно ограничен таким сроком. Пустое поле лучше ложного точного значения.
Отзывы о самом себе не превращаем в произвольную среднюю оценку. У Google есть отдельные ограничения для отзывов о локальном бизнесе; в этом примере рейтинги отсутствуют, потому что исходных отзывов нет. Звёзды в макете не являются основанием для aggregateRating. Добавление свойств следует за проверенными данными, а не за желанием заполнить каждый пункт документации.
Что произойдёт при противоречии
Представим, что в шапке сайта осталось «работаем до 20:00», а страница филиала и JSON-LD сообщают 19:00. Ошибка существует для человека ещё до индексирования. Исправление состоит в выборе подтверждённого расписания и обновлении всех представлений. Добавить ещё один блок разметки с правильным временем недостаточно: посетитель продолжит видеть неверное обещание.
Другой случай — адрес используется как зона обслуживания. Запись на Учебной улице описывает место приёмки, а не все районы, откуда могут приезжать клиенты. В следующем уроке мы отделим место от обслуживаемой территории. На текущем шаге можно сказать, куда приехать, но нельзя из одного адреса вывести доставку или выезд по всему городу.
Для редакционного чтения сопоставьте пять строк таблицы с видимой страницей и JSON-LD. Не требуйте наличия каждого поля в каждом формате: например, подробный текст о входе может не иметь специального свойства. Требуйте отсутствия конфликтов там, где сведения повторяются. Этот подход полезнее, чем механическое сравнение количества полей.
Неизвестный контакт не заменяется декоративным
На демонстрационных сайтах иногда ставят случайный телефон, чтобы заполнить дизайн. Для коммерческого документа это создаёт настоящее ложное направление: посетитель может позвонить постороннему человеку. Поэтому учебный макет явно сообщает отсутствие действующего контакта, а машинное описание не содержит телефон. В будущей реальной версии поле получают из подтверждённой записи организации.
Адрес также следует читать как данные, а не как украшение. Номер дома, помещение, вход и режим относятся к определённой точке. Общая карта города не подтверждает расположение мастерской. При публикации реального предприятия сотрудник проверяет совпадение текстового адреса, страницы проезда и карточек платформ. Здесь эти действия не выполняются: Новоград и обе улицы придуманы. Содержательно мы показываем, какие сведения должны быть согласованы, но не выдаём учебный объект за уже проверенную организацию.
Ожидаемый результат — филиал становится отдельной сущностью с постоянным идентификатором, документом и проверяемыми рабочими условиями. Учебная разметка не отправлялась внешнему валидатору, адрес не подтверждён в платформах, поисковый результат не наблюдался. Мы подготовили основу, которую далее расширим сведениями о территории и втором филиале, сохранив различие между организацией и конкретным местом.