Техническое задание: Интеграция API онлайн-записи для медицинского сайта

1. Общая архитектура и реализация

Интеграция должна быть выполнена в рамках экосистемы WordPress. Основные требования к архитектуре:

  • Предпочтительный способ: Разработка отдельного, изолированного плагина WordPress. Условное название плагина: online-booking-integration.
  • Нежелательный способ: Встраивание логики в пользовательскую тему (кастомную тему).

2. Функциональные требования к плагину

2.1. Административная часть (бэкенд)

Плагин должен предоставлять в админ-панели WordPress раздел настроек со следующими параметрами:

  • Авторизационный токен (API-ключ) для доступа к внешнему сервису.
  • Базовый URL-адрес внешнего API.
  • Время жизни кэша (TTL) для различных типов данных.
  • Настройки лимитов запросов (rate limiting).

2.2. Слой взаимодействия с фронтендом (BFF - Backend For Frontend)

Плагин должен реализовывать собственные REST API endpoints (точки доступа) на стороне WordPress. Эти endpoints будут использоваться фронтендом сайта (JavaScript) для получения данных в удобном формате. Их задачи:

  • Обращение к внешнему API онлайн-записи.
  • Кэширование и нормализация (приведение к единому формату) полученных ответов.
  • Возврат структурированных данных для отображения на сайте.

2.3. Пользовательская часть (фронтенд)

Плагин должен предоставлять механизмы для легкого встраивания виджета онлайн-записи в контент сайта:

  • Поддержка шорткода (shortcode) для вставки в любую страницу или пост.
  • Создание блока Гутенберга для визуального редактирования.
  • Виджет должен автоматически подтягивать контекст (например, данные конкретного врача или услуги) при размещении на соответствующих шаблонах.

2.4. Дополнительные возможности (опционально)

  • Реализация фоновых задач (CRON) или механизма для периодического обновления ("прогрева") справочников (списки врачей, услуг, расписания) для ускорения работы и снижения нагрузки на внешний API.

3. Технические ограничения

  • Запрещено размещать логику интеграции напрямую в файлах темы.
  • Запрещено делать прямые вызовы внешнего API со стороны фронтенда (браузера пользователя). Все запросы должны проходить через endpoints плагина на стороне WordPress.

Разработка лендинга на Tilda

Создание одностраничного сайта на платформе Tilda для презентации бренда и генерации заявок. Проект включает полный цикл от дизайн-концепции до запуска.