Как отслеживать несуществующие страницы с заданными URL параметрами (включая UTM метки)
В очередной раз на крупном клиентском проекте, где настроены все виды контекста, обнаружил, что опять была изменена структура сайта и часть объявлений стала вести на несуществующие страницы. И если Google Adwords об этом хотя бы честно предупреждает, хоть и не сразу, то Яндекс Директ молчит как партизан. В общем решил, что надо разобраться с этим вопросом.
Изначально появилась идея настроить учет 404 ошибок в Я.Метрике или Google Analytics. Но тут есть один нюанс, что хотелось бы получать информацию об обнаруженных неработающих страницах сразу, и чтобы процесс был максимально гибок. И если первое вполне реально решается настройкой уведомлений на события, то вот с гибкостью не все так гладко. Поэтому было принято решение пойти другим путем, а именно созданием отдельного компонента, который бы этим занимался.
Так как этот сайт работает на MODx Revolution, как и большая часть проектов, то и компонент был разработан специально для него. Возможно, он будет портирован еще на пару CMF, только если к нему будет интерес и найдется время.
Разберем работу компонента NotFoundParamAlert. Логика работы с ним проста: на событие ‘OnPageNotFound’, которое срабатывает на любую не найденную страницу, вешается плагин, который сравнивает параметры указанные в URL с заданными ему параметрами, и в случае совпадения генерирует уведомление. На данный момент сгенерированное уведомление может быть послано по email, указанный в настройках, или может быть залогировано средствами MODx Revolution.
На данный момент компонент поддерживает следующие настройки:
- parameters – список URL параметров, через запятую, для отслеживания.
- parameters_all – учитывать ли в сообщении все переданные URL параметры или только совпадающие.
- alert_method – способ уведомления: log – логирует сообщение, mail – отправляет сообщение на email, log, both – использует оба способа доставки сообщения.
- alert_log_level – уровень логирования сообщений.
- email_to – email на который отправлять уведомления.
Компонент был добавлен в официальный репозиторий и на modstore.pro.
Если будут предложения или пожелания по работе компонента, предлагайте :)
Комментарии (2)