Настройка WooCommerce Bookings: календарь, ресурсы, синхронизация

Клиент запускает сервис по аренде оборудования — через неделю выясняется, что два человека забронировали один и тот же экземпляр на одно время. Это знакомая ситуация? Мы сталкиваемся с такими кейсами постоянно. WooCommerce Bookings — плагин, который превращает обычный товар в бронируемый ресурс с ра

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Настройка WooCommerce Bookings: календарь, ресурсы, синхронизация
Средний
~2-3 дня

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1414
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1285
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    980
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1240
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    982
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    994

Клиент запускает сервис по аренде оборудования — через неделю выясняется, что два человека забронировали один и тот же экземпляр на одно время. Это знакомая ситуация? Мы сталкиваемся с такими кейсами постоянно. WooCommerce Bookings — плагин, который превращает обычный товар в бронируемый ресурс с расписанием, доступностью и правилами. Он решает проблему двойных броней и ручного согласования слотов. Но без правильной настройки он скорее добавит головной боли, чем порядка. За время работы мы настроили WooCommerce Bookings более чем для 50 проектов — от салонов красоты до проката техники. Средняя экономия времени на управление бронированиями после внедрения — до 10 часов в неделю, что сокращает затраты на персонал на 30–40%. В одном проекте с 15 ресурсами и 20 слотами в день ручное согласование занимало 5 часов в неделю, а после автоматизации — 20 минут. Это в 15 раз быстрее. Наш опыт гарантирует, что ваша система бронирования будет работать без сбоев. Получите консультацию по вашему сценарию.

Модель и типы бронирования

Bookings работает с тремя сущностями:

  • Bookable product — продукт с настроенными слотами и ценами
  • Booking — конкретная запись: кто, когда, какой продукт, статус
  • Resource — дополнительный ресурс, привязанный к продукту (например, конкретный мастер или кабинет)

Данные хранятся в wp_posts (тип wc_booking) и wp_postmeta. Расписание доступности — в мета-поле _wc_booking_availability. Всего плагин поддерживает до 20 правил доступности на продукт.

Типы бронирования

Тип Применение
Fixed blocks Слоты фиксированного размера (30 мин, 1 час)
Customer-defined Клиент выбирает произвольную продолжительность
Fixed duration days Ночи в отеле, дни аренды

Для посуточной аренды: duration = 1 day, min duration = 1, max duration = 14. Стоимость умножается на количество ночей.

Настройка правил доступности: как избежать ошибок?

Доступность настраивается через набор правил с приоритетами:

Rule 1: All days → Bookable (приоритет низкий) Rule 2: Saturday, Sunday → Not bookable Rule 3: 31 декабря → Not bookable (праздник) Rule 4: Monday 09:00–18:00 → Bookable 

Правила обрабатываются по убыванию приоритета. Фильтр через хук:

add_filter( 'wc_bookings_product_is_available', function( $is_available, $start, $end, $qty, $product ) { // кастомная логика: проверить внешний календарь, CRM и т.д. return $is_available; }, 10, 5 ); 

Мы часто используем этот хук для интеграции с внешними системами — например, чтобы не продавать слоты, если в CRM уже есть запись. Согласно официальной документации, хук позволяет расширить стандартную логику проверки доступности.

Почему ресурсы критичны для услуг?

Ресурсы — это независимо доступные единицы одного продукта. Пример: услуга «Стрижка» с ресурсами «Мастер Анна» и «Мастер Сергей». Каждый ресурс имеет собственное расписание и может добавлять доценку к стоимости. Без ресурсов клиент может забронировать одну и ту же стрижку у двух мастеров одновременно — катастрофа. Мы всегда включаем has_resources = true для услуг, где важно распределение. Параметр has_persons: true включает выбор количества людей, min_persons / max_persons ограничивают диапазон. Цена может пересчитываться на человека. В одном проекте мы делали систему бронирования бань: ресурсы — разные парные, persons — количество гостей. Всё работало без конфликтов.

Интеграция и уведомления

Синхронизация с Google Calendar

Bookings поддерживает двустороннюю синхронизацию с Google Calendar через официальный аддон WooCommerce Bookings — Google Calendar. Схема:

  1. Новое бронирование → создаёт событие в Google Calendar через Calendar API
  2. Событие в Google Calendar → при следующей синхронизации блокирует слот в Bookings

Необходима Google Cloud Console: проект, OAuth 2.0 credentials, включённый Calendar API. Синхронизация запускается через WP-Cron каждые 15 минут или принудительно из настроек:

// Принудительный запуск синхронизации do_action( 'wc-booking-gcal-sync' ); 

Уведомления

Плагин добавляет несколько типов писем в WooCommerce → Emails:

  • New Booking — менеджеру при создании
  • Booking Confirmed — клиенту при подтверждении
  • Booking Reminder — клиенту за N часов до начала (настраивается, по умолчанию за 24 часа)
  • Booking Cancelled — при отмене

Напоминания реализованы через Action Scheduler — задачи планируются в момент подтверждения бронирования.

Кастомные поля

// Добавить поле выбора мастера перед бронированием add_filter( 'woocommerce_booking_form_fields', function( $fields, $product ) { $fields['preferred_master'] = [ 'type' => 'select', 'label' => 'Предпочтительный мастер', 'options' => [ '' => 'Любой', 'anna' => 'Анна', 'sergey' => 'Сергей' ], ]; return $fields; }, 10, 2 ); 

Типичные проблемы и их решение

  • Слоты не появляются на фронте — чаще всего timezone mismatch: WordPress установлен в UTC, а правила доступности заданы по локальному времени. Проверьте: Settings → General → Timezone должен совпадать с ожиданиями клиента.
  • Двойное бронирование одного слота — не настроен параметр has_resources или capacity. Без ресурсов и при booking_duration_type = fixed нужно явно указать qty = 1 (максимум брони на слот).

Процесс настройки и сроки

Настройка одного продукта-услуги с простым расписанием занимает 1 рабочий день. Несколько ресурсов, Google Calendar, кастомные поля, логика ценообразования по датам — 3–4 дня.

Что входит в настройку?

  • Настройка продуктов и правил доступности под ваш бизнес
  • Интеграция с Google Calendar и внешними системами
  • Кастомные поля и уведомления
  • Полная документация и обучение сотрудников
  • Гарантия на все работы и поддержка после запуска

Свяжитесь с нами для точной оценки вашего проекта. Получите консультацию по вашему сценарию.