Как быстро найти ошибки на сайте — проверка важных тегов с помощью Google Tag Manager и таблиц Google
Как узнать, закрыли ли страницу для роботов поисковых систем буквально через минуту после того как это произошло? В этой статье — бесплатный алгоритм и скрипт для быстрой проверки наличия важных тегов на целевых страницах. Для внедрения понадобятся только Google Tag Manager и таблицы Google.
Кстати, этот текст — подробная расшифровка двенадцатой фишки
В качестве примера настроим проверку <meta name=”robots” content=”noindex”>. Этот тег часто ненарочно применяется для закрытия важных страниц от индексации.
1. В Google Tag Manager создаем переменную Meta Robots
В этой переменной будет храниться значение атрибута content тега meta robots.
Три CSS-селектора помогут избежать ошибок на сайтах, где название атрибута name содержит заглавные буквы (такое иногда случается).
2. В Google Tag Manager создаем триггер Noindex Meta Robots
Триггер будет срабатывать, если:
- переменная Meta Robots содержит noindex;
- URL страницы соответствует регулярному выражению.
Для второго правила нужно задать в регулярном выражении страницы, которые вы хотите проверять.
3. Копируем таблицу Google для приема данных
Нужно создать таблицу, которая будет принимать данные с нужными названиями колонок.
Чтобы упростить задачу, пройдите по пути File — Make a copy и скопируйте себе готовую таблицу-шаблон. В таблице уже есть все скрипты.
Достаточно определять URL и время обнаружения тега. Если хотите отслеживать больше параметров, просто добавьте новые столбцы и параметры URL в четвертом пункте.
Важно: не идите дальше, пока не указали названия колонок! Иначе скрипт будет выдавать ошибку.
4. Настраиваем скрипт приема данных
В таблице из предыдущего пункта следует пройти по пути Tools — Script editor и отредактировать переменные в файле Get data.gs.
В var SHEET_NAME = "Sheet Name"; замените Sheet Name на название вашего рабочего листа (в моем случае — noindex).
В var SHEET_KEY = "Spreadsheet ID"; заменить Spreadsheet ID на ID вашей таблицы.
После этого в редакторе скриптов следует опубликовать скрипт как веб-приложение с публичным доступом. При первом запуске нужно будет дать разрешение, нажав «Развернуть».
После этого будет сгенерирован URL-адрес веб-приложения.
Желтым выделен [ID_веб_приложения]. Сохраняем его — он понадобится во всех последующих пунктах.
Теперь мы можем передавать значения в таблицу по шаблону:
https://script.google.com/macros/s/[ID_веб_приложения]/exec?
[Название_колонки_1]=
[Данные_1]&[Название_колонки_2]=[Данные_2]&
[Название_колонки_3]=[Данные_3]&Timestamp
Мы будем передавать URL-адрес страницы с noindex. Для параметра Timestamp не нужно передавать значение. Скрипт сам запишет в него время получения данных.
5. Проверяем приходят ли данные в таблицу
Переходим в браузере по следующей ссылке:
https://script.google.com/macros/s/[ID_веб_приложения]/exec?url=https://domain.com/test-url&Timestamp
Мы должны получить подтверждение об успешном завершении операции и номер строки таблицы, куда были вставлены данные.
6. В Google Tag Manager создаем тег Meta robots check
Создаем тег типа «Пользовательское изображение». В URL изображения нужно вставить:
https://script.google.com/macros/s/[ID_веб_приложения]/exec?url={{Page URL}}&Timestamp
К тегу нужно применить триггер Noindex Meta Robots из второго пункта алгоритма.
7. Настраиваем скрипт проверки наличия URL в таблице
Скрипт уже есть на листе Check noindex.gs. Он проверяет, есть ли URL на листе noindex для текущей даты. Если есть хоть один URL, отправляется письмо на email-адрес, указанный на листе emails.
8. Устанавливаем триггер для скрипта
Теперь осталось только установить периодичность проверки наличия закрытых для индексирования URL в таблице.
Для этого в меню переходим Edit — Current project’s triggers, жмем Click here to add one now и задаем нужную периодичность срабатывания скрипта.
Если достаточно только один раз в день проверять страницы, раскомментируйте вторую переменную checkDate вверху файла Check noindex.gs и настройте соответствующий триггер.
Выводы
Чтобы быстро и бесплатно настроить проверку закрытия важных страниц от индексации, нужно:
- Создать в Google Tag Manager переменную для хранения значения meta robots.
- Создать в Google Tag Manager триггер, который срабатывает при наличии noindex в переменной.
- Настроить таблицу Google для приема данных.
- Настроить скрипт приема данных.
- Создать в Google Tag Manager тег типа «Пользовательское изображение», который будет передавать данные в таблицу.
- Настроить скрипт проверки наличия URL в таблице для нужного дня.
- Установить триггер для скрипта проверки.
Вы можете доработать скрипт под себя. Например, настроить передачу данных в одну таблицу для разных сайтов и отправку отдельных писем для каждого сайта.
Единственное ограничение предложенного метода: ограничение таблицы Google — 400 000 ячеек. Потому иногда нужно очищать главный лист от ненужных записей.
Жду в комментариях идеи по улучшению данного метода.
Свежее
Обзор изменений в GA4: различие между ключевыми событиями (Key events) и конверсиями (Conversions)
Увидели оповещение в GA4 об изменении в конверсиях? Давайте разбираться что именно изменилось и как это повлияет на вашу аналитику
Как добиться роста органического трафика на 195% за полгода в высококонкурентной нише — кейс BAYADERA
Показываем на практике как повысить видимость сайта и небрендовый органический трафик
Кто такой конечный пользователь, и Почему он важен
Он нужен не только для настройки рекламы, но и при разработке продукта или услуги. Разбираемся, кто он такой и как его найти