Установка виджета

Для установки виджета нужна возможность встраивать JavaScript на ваш сайт. Неважно, написан ли сайт самостоятельно или создан через конструктор (например, Tilda, WordPress или Drupal).

Как это работает

Виджет открывает гостевую страницу бронирования https://{company}.tourmakers.ru/g/{id} в модальном окне на сайте клиента.

HTTPS. Для безопасной работы iframe рекомендуем подключать виджет на сайте с HTTPS. На HTTP некоторые браузеры могут ограничивать вложенный контент.

Код виджета состоит из двух частей:

  1. Контейнер с параметрами (data-* атрибуты).
  2. Скрипт widget.js — подключается один раз на страницу.

Код подключения

1. Контейнер виджета

Разместите контейнер в конце <body> (или в любом месте страницы). Кнопка позиционируется поверх сайта через position: fixed — угол и отступы задаются атрибутами data-button-corner, data-button-offset-x, data-button-offset-y.

<div
  data-widget-id="tour-widget"
  data-company="seventravel"
  data-id="nomer-202"
  data-button-icon="ticket"
  data-button-color="#3b82f6"
  data-button-corner="bottom-right"
  data-button-offset-x="24"
  data-button-offset-y="24"
  data-modal-title="Бронирование"
></div>

2. Скрипт API

Укажите скрипт один раз в конце страницы (или с атрибутом defer):

<script src="https://widget.tourmakers.ru/widget.js" defer></script>

Иконки кнопки

По умолчанию — ticket. Также доступны иконки из /icons:

Билет
ticket
Колокольчик
bell
Колокольчик с анимацией
bell-ring

Иконка + подпись (опционально)

Если нужен текст рядом с иконкой, добавьте data-button-text:

<div
  data-widget-id="tour-widget"
  data-company="seventravel"
  data-id="nomer-202"
  data-button-icon="ticket"
  data-button-text="Забронировать"
  data-button-color="#3b82f6"
></div>

Атрибуты

Атрибут Описание Обязательный По умолчанию
data-company Поддомен компании Да
data-id Идентификатор объекта / страницы гида Да
data-button-icon Иконка кнопки (ticket или из /icons) Нет ticket
data-button-text Подпись рядом с иконкой (если пусто — только иконка) Нет пусто
data-button-color Цвет фона кнопки Нет #3b82f6
data-button-text-color Цвет текста / inline-иконки Нет #ffffff
data-button-corner Угол экрана: bottom-right, bottom-left, top-right, top-left Нет bottom-right
data-button-offset-x Горизонтальный отступ от угла, px (0–80) Нет 24
data-button-offset-y Вертикальный отступ от угла, px (0–80) Нет 24
data-button-position Если inline — кнопка в потоке документа (для демо); иначе fixed Нет fixed
data-modal-title Заголовок модального окна Нет Бронирование

Примеры

Ниже — inline-демо иконок (data-button-position="inline"). На сайте отеля используйте угол и отступы без этого атрибута.

По умолчанию

Иконка + текст

Логотип Турмейкеры

Плавающая кнопка (как на сайте отеля)

Один виджет в правом нижнем углу экрана:

Высота iframe

По умолчанию iframe заполняет модальное окно. Если вложенная страница сообщает высоту через postMessage, виджет подстроит размер:

parent.postMessage({ type: 'resize', height: document.documentElement.scrollHeight }, '*');