Кейсы
Sitemap генератор
Разработка CLI-скрипта на PHP для автоматической генерации sitemap.xml. Поддержка проверки URL, гибкие параметры командной строки, интеграция с cron и уведомления поисковых систем.
Этот PHP-скрипт представляет собой CLI-инструмент для автоматической генерации XML-карты сайта (sitemap.xml). Скрипт считывает конфигурацию с перечнем URL-адресов, создает корректный XML-документ согласно протоколу Sitemap и сохраняет его в указанную директорию. После генерации скрипт может автоматически уведомить поисковые системы (Google, Yandex и другие) о наличии обновленной карты сайта.
Необходимо было создать удобное решение для регулярного обновления sitemap.xml, которое можно запускать как вручную, так и автоматически через cron. Требовалось обеспечить гибкость настройки через параметры командной строки, возможность проверки доступности URL перед генерацией и интерактивное взаимодействие с пользователем при ручном запуске.
Задача решена через создание класса SitemapCLI, который инкапсулирует всю логику работы с командной строкой и взаимодействие с пользователем. Скрипт использует отдельный класс SitemapGenerator для непосредственной генерации XML, что обеспечивает разделение ответственности. Реализован парсинг аргументов командной строки, валидация URL с помощью HTTP-запросов, форматированный вывод с цветовой индикацией успеха/ошибок и система подтверждений для критичных операций.
Основные возможности
- Генерация sitemap.xml
- Режим предпросмотра
- Автоматизация через cron
- Валидация URL-адресов
- Уведомление поисковиков
- Гибкие CLI-параметры