Выбрать главу

Утилиты

Рис. 214. Встроенные переменные «Утилиты»

Набор из 6 встроенных переменных в GTM, которые в большей степени носят служебные функции.

Event – возвращает подстроку, которая содержит тип события, произошедшее на сайте. Например, при нажатии на любой элемент возвращает gtm.click, на ссылку – возвращает gtm.linkClick, при заполнении формы – gtm.formSubmit, при возникновении ошибки – gtm.pageError.

Environment Name – возвращает название текущей среды («Реальная», «Последняя» или «Редактирование»), если запрос контейнера выполнен из функции «Поделиться ссылкой для просмотра» или из фрагмента кода среды.

Container ID – возвращает номер контейнера GTM. Например, GTM-NC2LK3M.

Рис. 215. Container ID

Container Version – возвращает номер версии контейнера в виде строкового значения. Например, 5.

Рис. 216. Container Version

Random Number – возвращает случайное число от 0 до 2147483647. Например, 666.

HTML ID – возвращает идентификатор пользовательского HTML-тега. Используется с секвенированием (порядком активации) тегов.

Если мы с вами перейдем в отладчик GTM, то увидим такие значения переменных из категории «Утилиты»:

Рис. 217. Пример встроенных переменных «Утилиты»

В качестве события был выбран Page View (Просмотр страницы):

Container ID – GTM-W9PC2C8 (идентификатор контейнера);

Container Version – QUICK_PREVIEW (режим предварительного просмотра);

Environment Name – Draft Environment 6 2018–04–30 09:47:15 (название среды);

Event – gtm.js (событие просмотра страницы);

HTML ID – значение не присвоено. Значение ID переменной HTML отображается только в том случае, если мы работаем с тегами типа пользовательский HTML;

Random Number – 294510670 (генератор случайных чисел). При обновлении страницы и фиксации нового события данное число изменится.

Ошибки

Рис. 218. Встроенные переменные «Ошибки»

Переменные из этой категории позволяют разработчикам анализировать ошибки, происходящие на сайте (анализ страниц, типы устройств, версий браузеров, разрешений экранов и т.д.). Для использования этих переменных необходимо их активировать и создать хотя бы один триггер типа «Ошибка JavaScript».

Рис. 219. Тип триггера – Ошибка JavaScript

Error Message – возвращает строку, содержащую сообщение об ошибке, отправленное с помощью триггера «Ошибка JavaScript».

Error URL – возвращает строку, содержащую URL-адрес скрипта, в котором была обнаружена ошибка.

Error Line – строка файла, в которой произошла ошибка.

Debug Mode – возвращает значение «true», если активирован режим отладки в Google Tag Manager.

В качестве наглядного примера создадим вынужденную ошибку в коде JS. Но перед тем, как запускать отладчик Google Tag Manager, не забываем создать новый триггер «Ошибка JavaScript» и обновить режим предварительного просмотра. Только после этого изменения вступят в силу.

Рис. 220. Обновление режима предварительного просмотра

В отладчике GTM будет доступна следующая информация:

Рис. 221. Пример встроенных переменных «Ошибки»

Debug Mode – true, так как у нас активирован режим отладки;

Error Line – 801 строка;

Error Message – сообщение об ошибке;

Error URL – URL-адрес скрипта, в котором обнаружена ошибка.

В случае, если мы в JavaScript используем конструкцию "try..catch", то Google Tag Manager не зафиксирует ошибку. Конструкция выглядит следующим образом:

Рис. 222. Конструкция "try..catch"

Работает она так:

1. Выполняется код внутри блока try.

2. Если в нем ошибок нет, то блок catch(err) игнорируется, то есть выполнение доходит до конца try и потом прыгает через catch.

3. Если в нем возникнет ошибка, то выполнение try на ней прерывается, и управление прыгает в начало блока catch(err).

При этом переменная err (можно выбрать и другое название) будет содержать объект ошибки с подробной информацией о произошедшем. Таким образом, при ошибке в try скрипт не «падает», и мы получаем возможность обработать ошибку внутри catch.

Подробнее про try..catch читайте в справочниках по JavaScript или в этой статье.

Клики

Рис. 223. Встроенные переменные «Клики»

Переменные в этой категории используются для отслеживания кликов по элементам сайта. Разделить их можно на две составляющие:

● переменные, которые возвращают значения при клике по всем элементам (gtm.click);

● переменные, которые возвращают значения при клике только по ссылкам (gtm.linkClick).

Click Element – возвращает значение для того HTML-элемента, на который кликнул пользователь и который был объектом действия пользовательского события (Event – gtm.click или gtm.linkClick). Этот объект извлекается из ключа gtm.element в dataLayer.

Click Classes – возвращает строку, содержащуюся в ключе gtm.elementClasses значении атрибута className пользовательского события по которому был выполнен клик. Аналог {Click Element}}.className

Click ID – возвращает строку, содержащуюся в ключе gtm.elementId значении атрибута ID пользовательского события по которому был выполнен клик. Аналог свойства {{Click Element}}.id

Click Target – возвращает строку, содержащуюся в ключе gtm.elementTarget значении атрибута target пользовательского события по которому был выполнен клик. Аналог свойства {{Click Element}}.target

Click URL – возвращает строку, содержащуюся в ключе gtm.elementUrl значении атрибута href пользовательского события по которому был выполнен клик. Аналог свойства {{Click Element}}.href для ссылок, и {{Click Element}}.action для форм.

Click Text – возвращает строку, содержащуюся в ключе gtm.elementText значении атрибута textContent / innerText пользовательского события по которому был выполнен клик. Аналог свойства {{Click Element}}.innerText

Для прослушивания кликов в Google Tag Manager используются встроенные триггеры из раздела «Клики».