Техническое задание: Автоматизация замены домена в базах данных WordPress
Цель проекта
Создать автоматизированное решение для массовой подготовки шаблонных баз данных WordPress под новые домены. Решение должно исключить ручной труд, минимизировать ошибки и обеспечивать централизованное управление задачами.
Основные требования к функционалу
1. Управление задачами
- Скрипт должен получать список задач из указанной Google Таблицы.
- Каждая строка таблицы - отдельная задача с параметрами: исходный SQL-файл (шаблон) и целевой домен для замены.
2. Обработка базы данных
- Загрузка указанного SQL-дампа WordPress.
- Безопасная замена всех вхождений старого доменного имени на новое.
- Корректная работа со сложными структурами WordPress:
- Сериализованные (serialized) данные в полях.
- Данные плагинов (Elementor, Advanced Custom Fields).
- Опции сайта, метаданные записей и пользователей.
- Предпочтительно использовать метод, аналогичный
wp search-replace из WP-CLI, для гарантии целостности данных.
3. Результат работы
- Обработанная база данных должна экспортироваться в новый SQL-файл.
- Файлы следует сохранять в отдельную, чётко структурированную папку.
4. Уведомления и логирование
- Интеграция с Telegram-ботом для отправки уведомлений.
- Отправка статусов: начало обработки задачи, успешное завершение, ошибки с описанием.
Критерии качества
- Надёжность: Скрипт не должен повреждать структуру базы данных.
- Автоматизация: Минимальное вмешательство оператора после запуска.
- Масштабируемость: Возможность обработки десятков и сотен задач подряд.
- Читаемость кода: Код должен быть хорошо структурирован и документирован.