Разработка сайта барбершопа на 1С-Битрикс
Сайт барбершопа — это витрина мастеров и точка входа для записи. Не корпоративный портал, не медиа-проект. Посетитель приходит с одной целью: выбрать мастера, посмотреть его работы и записаться. Вторая задача — продажа мужской косметики и средств для ухода. На 1С-Битрикс обе задачи закрываются одной инсталляцией: инфоблоки для каталога услуг и мастеров, модуль sale для мерч-магазина, интеграция с системами записи через REST.
Каталог услуг и мастера
Инфоблок «Услуги» содержит элементы: мужская стрижка, моделирование бороды, королевское бритьё, комплекс «стрижка + борода», камуфляж седины, детская стрижка. Свойства каждого элемента: длительность (минуты), категория (базовые / премиум), описание процесса, фото результата.
Инфоблок «Мастера» — ключевой для барбершопа. Свойства:
-
Фото — обязательно профессиональное, обрабатывается ресайзом при загрузке через
CIBlock::ResizeImageGet -
Специализация — привязка к элементам инфоблока услуг (множественное свойство типа
E) - Стаж — числовое
- Портфолио — множественное свойство «Файл» (фото работ до/после)
- Рейтинг — числовое, обновляется агентом на основе отзывов
- График — привязка к HL-блоку расписания
- Внешний ID — идентификатор мастера в YCLIENTS / Dikidi (строка)
На детальной странице мастера выводится галерея портфолио в формате «до/после» с бегунком сравнения (реализация на JS без сторонних библиотек — два <img> в контейнере с overflow: hidden и input[type=range]). Под галереей — отзывы, привязанные к мастеру через свойство типа E в инфоблоке отзывов.
Онлайн-запись: интеграция YCLIENTS и Dikidi
Большинство барбершопов уже используют YCLIENTS или Dikidi для внутреннего учёта. Дублировать расписание на сайте — путь к рассинхронизации. Правильный подход — интеграция через API.
Схема взаимодействия:
- Посетитель на сайте выбирает мастера (из инфоблока Битрикс)
- По
UF_EXTERNAL_IDмастера отправляется запрос к API YCLIENTS:GET /book_staff/{staff_id}/services— получаем актуальный список услуг с ценами - Посетитель выбирает услугу → запрос
GET /book_dates/{staff_id}— доступные даты - Выбирает дату → запрос
GET /book_times/{staff_id}/{date}— свободные слоты - Подтверждает запись →
POST /book_record— создание записи в YCLIENTS
Все API-запросы проходят через серверный прокси (контроллер Битрикс), а не напрямую из браузера — это скрывает API-ключ и позволяет кешировать ответы. Список доступных дат кешируется на 5 минут в CPHPCache, слоты — на 2 минуты.
Если барбершоп не использует внешнюю систему записи — бронирование строится на собственном Highload-блоке расписания по аналогии с другими сервисными проектами: мастер × дата × время, генерация слотов агентом, защита от двойной записи через проверку статуса в момент подтверждения.
Обратная синхронизация. При создании/отмене записи через админку YCLIENTS вебхук отправляет данные на endpoint Битрикса, который обновляет локальный кеш. Это гарантирует, что сайт показывает актуальные слоты, даже если запись сделана по телефону.
Мерч-магазин: средства для ухода
Раздел магазина строится на стандартной связке catalog + sale. Товары — помады для волос, масла для бороды, шампуни, бальзамы, аксессуары. Торговый каталог с SKU: один товар «Масло для бороды Brand X» имеет предложения по объёму (30 мл / 50 мл / 100 мл).
Особенности реализации:
-
Рекомендации мастера — на детальной странице мастера выводится блок «Рекомендует» с привязкой к товарам каталога (свойство типа
Eв инфоблоке мастеров, ссылка на торговый каталог) -
Покупка при записи — в процессе онлайн-записи предлагается добавить товар в корзину. Реализуется через компонент перекрёстных продаж (
catalog.section.listс фильтром по рекомендациям мастера) -
Самовывоз из барбершопа — служба доставки
sale.deliveryс типом «самовывоз», привязанная к адресу барбершопа. Клиент забирает заказ при следующем визите
Оплата — онлайн через sale.paysystem или при визите. Для заказов с самовывозом по умолчанию выбирается оплата при получении.
Блог о мужском стиле
Раздел на инфоблоке с разделами: стрижки (тренды, подбор по типу лица), борода (уход, стили), стиль (одежда, аксессуары). Каждая статья — элемент с SEO-свойствами: title, description, og:image. Автор статьи привязан к инфоблоку мастеров — это работает на персональный бренд мастера и внутреннюю перелинковку.
ЧПУ формируются по шаблону /blog/раздел/название-статьи/. Хлебные крошки — через компонент breadcrumb с кастомным шаблоном. XML-карта сайта генерируется модулем SEO Битрикс с включением всех разделов: услуги, мастера, блог, магазин.
Техническая база
- Адаптивность — mobile-first, запись на мобильном занимает 3 тапа: мастер → услуга → время
- Композитный кеш — для каталога услуг, страниц мастеров, блога. Магазин и расписание — без кеша, AJAX
-
Уведомления — SMS-напоминание за 2 часа до визита через
messageservice, push при наличии PWA-обёртки







