Техническое задание: Разработка скрипта синхронизации для туристического сайта
Необходимо оптимизировать или полностью переписать существующее решение для автоматической работы с внешними API.
Основные функции системы
- Интеграция с двумя API туроператоров: Получение данных об экскурсиях (название, цена, описание, ссылки на изображения).
- Работа с WordPress: Сайт работает на WordPress. Для каждого оператора используется отдельный шаблон страницы экскурсии.
- Автоматическое обновление контента: По запросу из админки система должна проверять обновления в API и синхронизировать данные на сайте: цена, описание, скидки, статус активности.
- Управление статусами: Если экскурсия стала неактивной у оператора, её страница должна перемещаться в корзину WordPress.
- Создание новых страниц: Скрипт должен проверять, существует ли уже экскурсия в каталоге сайта. При обнаружении новой - автоматически создавать для неё страницу с использованием соответствующего шаблона.
- Формирование метаданных: Mета-теги страниц (title, description) должны генерироваться на основе полученных из API данных.
- Работа с медиа: Изображения не загружаются на сервер сайта, а подключаются по прямым ссылкам с сайтов операторов.
Требования к реализации
- Код должен быть написан с акцентом на надежность, понятную структуру и легкость дальнейшей поддержки.
- Необходимо предусмотреть обработку ошибок при работе с API (отсутствие ответа, изменение структуры данных).
- Процесс синхронизации (как полной, так и проверки обновлений) должен быть запускаемым по требованию из интерфейса WordPress.
- Важно обеспечить корректную работу с дублирующимся контентом и избежать создания повторяющихся страниц.