Техническое задание: Разработка API-блоков для WordPress

Общая задача

Требуется разработать и интегрировать на сайт, работающий на CMS WordPress, три взаимосвязанных блока, которые получают и отображают данные о авиаперелетах через внешние API-сервисы. Блоки должны быть выполнены в виде плагинов или виджетов с настраиваемым внешним видом.

Требуемые блоки

1. Блок "Календарь низких цен"

Функционал, аналогичный представленному на популярных туристических сайтах:

  • Отображение календаря на месяц или несколько месяцев вперед.
  • Визуальная индикация дат с наиболее низкой стоимостью перелета по выбранному направлению.
  • Возможность быстрого выбора даты вылета и возвращения.
  • Интерактивность: при наведении на дату отображается ориентировочная цена.

2. Блок "Расписание рейсов"

  • Табличное или списковое отображение рейсов на выбранную дату.
  • Вывод ключевой информации: время вылета/прилета, авиакомпания, длительность перелета, тип самолета.
  • Фильтрация и сортировка (по времени, цене, авиакомпании).

3. Блок "Подборка билетов"

Блок для отображения актуальных предложений по билетам с возможностью фильтрации:

  • По конкретному маршруту: Город вылета → Город прилета.
  • По стране назначения: Все предложения в указанную страну.
  • По городу назначения: Все предложения в указанный город.

Для каждого билета должна выводиться краткая информация: цена, даты, авиакомпания, длительность перелета с ссылкой на бронирование.

Технические требования

  • Реализация в экосистеме WordPress (плагины, шорткоды, виджеты Gutenberg).
  • Интеграция с одним или несколькими внешними API для получения актуальных данных о перелетах и ценах.
  • Настройка подключения к API (ключи, endpoints) должна выноситься в админ-панель WordPress.
  • Кэширование данных для снижения нагрузки на API и увеличения скорости работы сайта.
  • Адаптивный и настраиваемый дизайн, вписывающийся в стиль сайта.