Рис. 269. Пример точечной нотации
Если вы не указали значение по умолчанию, переменная Data Layer вернет undefined. При задании настроек переменной существует выбор версии:
● Версия 1 – разрешает использовать точки в названии. Например, dataLayer.push(‘k.e.y’: ‘value’) ключ будет интерпретироваться как k.e.y (т. е. {‘k.e.y’: ‘value’}).
● Версия 2 – интерпретирует точки, как иерархию. Например, dataLayer.push({‘k.e.y’: ‘value’}) будет интерпретировано три уровня: {k: {e: {y: ‘value’}}}.
● Переменная JavaScript
Рис. 270. Пользовательская переменная JavaScript
Принимает значение переменной JavaScript, имя которой указано в поле «Имя глобальной переменной». Если такой переменной не существует, вернется значение undefined.
Например, у вас на сайте в коде страницы объявлена глобальная переменная:
var namePeremen = 5
Рис. 271. Переменная namePeremen объявлена в коде сайта
В этом случае переменная JavaScript вернет значение глобальной переменной, что объявлена на странице, то есть 5 (и тип «number», «string» и т.д.):
Рис. 272. Пример пользовательской переменной JavaScript
● Собственный код JavaScript
Пользовательские JavaScript переменная является наиболее универсальным переменной в наборе. Вы можете использовать ее для запуска произвольного JavaScript на странице. Он создает контекст сценария, то есть вы также можете вызывать другие переменные изнутри, используя соответствующий синтаксис.
Значение этой переменной вычисляется в браузере с помощью заданной функции JavaScript. Функция вызывается при каждом использовании переменной, возвращая ее значение.
Пользовательская переменная JavaScript должна следовать нескольким правилам:
1. скрипт должен быть размещен в функциональном блоке function() { … })
2. функция должна иметь оператор return
3. функция должна возвращать только значение.
Если явного значения нет, функция возвращает неопределенное значение. Это может привести к нарушению нормальной работы контейнера.
Рис. 273. Пример собственного кода JavaScript
В отладчике Google Tag Manager:
Рис. 274. Пример пользовательской переменной «Собственный код JavaScript»
Вы можете вернуть любую переменную или значение, даже другие функции, другие переменные GTM или ничего (return без возврата -> undefined, неопределенное значение).
Рис. 275. Пример без возврата (неопределенное значение), return
Элементы страницы
Рис. 276. Пользовательские переменные «Элементы страницы»
Следующая категория в Google Tag Manager состоит из 3 пользовательских переменных:
● Видимость элемента – позволяет вам определить какой конкретный элемент был виден в браузере пользователя. Используется с триггером «Доступность элемента».
Значение зависит от видимости указанного элемента DOM. В качестве примера зададим селектор элемента кнопки на сайте:
Рис. 277. Селектор элемента кнопки на сайте
Тип результата «истина/ложь» (true/false) и минимальный процент видимости:
Рис. 278. Настройки в переменной «Видимость элемента»
В отладчике Google Tag Manager будет доступен следующий результат:
Рис. 279. Пример пользовательской переменной «Видимость элемента»
В случае видимости элемента в браузере при минимальном проценте видимости – true, в случае если элемент не был в поле зрения пользователя и не удовлетворяет проценту видимости – false.
● Переменная автоматического события (Auto-Event Variable)
Переменная автоматического события используется для доступа к целевому элементу действия пользовательского события (клики, ошибки, отправки формы и т.д.). Когда вы создаете новую переменную Auto-Event, вам нужно указать только тот компонент целевого элемента, к которому вы хотите получить доступ.
Рис. 280. Переменная автоматического события
Часть типов переменной совпадает со встроенными переменными (см. выше):
● Элемент = Click Element и Form Element;