Вставить

Как это настроить

  1. В панели управления wp-admin вашего сайта перейдите в раздел Baza Booking Calendar — «Настройки» — «Встраивание», установите флажок «Разрешить встраивание на других сайтах» и сохраните настройки.
  2. На этом же экране в поле «Сайты, которым разрешено встраивать» укажите сайты, которые могут встраивать календарь, по одному в строке, указывая только домен: example.com Оставьте поле пустым, и любой сайт сможет встроить календарь — что также означает, что любой сайт сможет разместить его под своим собственным контентом.
  3. Выберите, что нужно встроить на этом же экране, и скопируйте строку, которую система сгенерирует для вас. Или воспользуйтесь одним из приведённых ниже примеров — это то же самое, только уже заполненное.
  4. Вставьте его на другой сайт в любом месте страницы, где должен располагаться календарь. Там не нужно ничего устанавливать: ни плагинов, ни WordPress, ни учетной записи.

Примеры

Весь календарь с инструментом выбора службы

<script src="https://bazadevelopers.com/bbc-embed.js"></script>

Больше ничего не нужно. Это тот же календарь, что отображается на ваших страницах, с теми же услугами, ценами и правилами.

Одна услуга сама по себе

<script src="https://bazadevelopers.com/bbc-embed.js" data-service="12"></script>

Идентификатор услуги, указанный в приведённом выше списке услуг. Выпадающий список не отображается, и клиент бронирует именно эту услугу.

Кнопка «Войти» для их шапки

<script src="https://bazadevelopers.com/bbc-embed.js" data-type="auth" data-account-url="/account/" data-login-text="Log in" data-account-text="My account"></script>

Оно отображается в виде разметки, а не в виде фрейма, поэтому его меню открывается поверх страницы. Атрибут `data-account-url` указывает на страницу на ИХ сайте, на которой находится учетная запись — все ссылки в меню ведут именно на нее, поэтому пользователи не перенаправляются на ваш сайт.

Учетная запись клиента — на отдельной странице

<script src="https://bazadevelopers.com/bbc-embed.js" data-type="account" data-account-url="/account/"></script>

Разместите это на странице, указанной в атрибуте `data-account-url`. Бронирования, баланс, программа лояльности и профиль — всё это. Вход и выход из системы происходят на этой странице, и пользователь никогда не покидает её.

Куда попадает клиент после оплаты

<script src="https://bazadevelopers.com/bbc-embed.js" data-return-url="/thank-you/" data-cancel-url="/booking/"></script>

Указано в календаре. Оба адреса должны находиться на одном из перечисленных выше сайтов — оплата никогда не возвращается на адрес, за который никто не поручился.

Квитанция, расположенная на странице, на которую они попадают

<script src="https://bazadevelopers.com/bbc-embed.js" data-type="payment" data-home-url="/"></script>

Разместите этот код на странице, указанной в атрибуте data-return-url. Он выводит информацию о заказе, датах и сумме оплаты — платежный шлюз добавляет номер бронирования к адресу, и этот код его считывает. Атрибут data-home-url указывает на страницу, на которую ведет соответствующая кнопка на их сайте.

Сколько места это занимает

<script src="https://bazadevelopers.com/bbc-embed.js" data-width="100%" data-max-width="1200px"></script>

Число обозначает количество пикселей; все остальное принимается в том виде, в каком оно написано. Если это значение не указано, элемент занимает столько места, сколько ему отводит страница.

Другой вид ваших страниц

<script src="https://bazadevelopers.com/bbc-embed.js" data-theme="dark" data-view="month" data-whole-day="yes"></script>

Тема, вид и бронирование на весь день — только для этого встраиваемого модуля. Если эти параметры не указаны, для каждого из них будут применяться ваши настройки дизайна.

Когда конструктор страниц не сохраняет тег скрипта

<div data-bbc-embed data-service="12"></div> <script src="https://bazadevelopers.com/bbc-embed.js"></script>

Пустой элемент с теми же атрибутами работает одинаково, где бы он ни находился. Включите скрипт один раз в любом месте страницы.

Кэширование

Если на вашем сайте используется плагин кэширования страниц (LiteSpeed Cache, WP Rocket, W3 Total Cache, WP Super Cache и другие), необходимо настроить три параметра, иначе форма бронирования будет работать некорректно, что может выглядеть как сбои в её работе:

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

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

Распространенные проблемы

  • Ничего не отображается: либо вышеуказанный параметр отключен, либо лицензия не предусматривает встраивание. При отключенном параметре этот сайт намеренно не предоставляет никаких данных.
  • Календарь отображается, но каждый день закрыт: сайт, на котором он находится, отсутствует в приведенном выше списке. На запрос, касающийся сайта, не включенного в список, дается ответ без разрешения на его просмотр, и браузер отбрасывает его.
  • Вход в систему не сохраняется: оба сайта должны использовать протокол HTTPS. Браузер отказывается сохранять сессию для одного сайта, пока посетитель находится на другом, если оба сайта не являются безопасными.
  • Меню учетной записи ведёт на этот сайт: отсутствует атрибут data-account-url. Без него система не знает, где находится страница собственной учетной записи, поэтому ссылки остаются такими, как они были указаны здесь.
  • Два календаря на одной странице: на страницу можно отобразить только один — его настройки являются общими для всей страницы. Добавьте атрибут data-frame="yes" ко второму календарю, чтобы он отображался в отдельной рамке.
  • Страница с квитанцией пуста: она выводится на печать только после того, как шлюз перенаправил клиента обратно на эту страницу, поскольку номер бронирования указывается в адресе. При открытии этой страницы вручную ничего не отображается, что является нормальным.
Последнее изменение: 14.09.2026