При работе с Google Tag Manager 2.0. вы определенно столкнетесь с переменными: они используются в конфигурации триггеров, тегов и других переменных.
Что такое переменная?
Определение Google: “Переменные — это пары ключ-значение, которые принимают определенное значение в процессе выполнения кода”.
Классический пример — переменная “Page URL”, которая принимает значение URL страницы, на которой в данный момент выполняется код Google Tag Manager (например, http://mysite.com/about/).
Чтобы использовать переменную в Google Tag Manager, вы должны придерживаться специального синтаксиса:
{{name of variable}}
Можно как вручную прописывать имя переменной, так и пользоваться преимуществами GTM. В интерфейсе GTM 2.0 встречается иконку со знаком “+”, при нажатии на которую из выпадающего списка можно выбрать нужную переменную:
Это бывает особенно удобно, когда у вас много переменных и их названия становится трудно запоминать — проще выбрать из списка в два клика.
В списке на изображении выше можно увидеть переменную {{UA ID}}: эта переменная содержит идентификатор Universal Analytics(в формате UA-XXXXXX-X) и используется в тегах типа “Universal Analytics”. Очень удобно создать такую переменную, чтобы в каждом теге не вводить вручную ID. А в случае, если у сайта изменится идентификатор отслеживания(например, вы решили создать новый ресурс Universal Analytics для сайта), достаточно просто заменить его в переменной {{UA ID}}, вместо того, чтобы править десятки тегов.
Еще одна интересная особенность Google Tag Manager: например, вы решили переименовать переменную {{UA ID}} в {{Universal Analytics ID}}. Можно заметить, что после сохранения изменений старое имя переменной будет автоматически заменено на новое во всех тегах.
Переменные Google Tag Manager могут быть полезны и там, где необходимо использовать JavaScript-код. Например, в тегах с типом “Custom HTML Tag” или переменной “Custom JavaScript”. Достаточно просто использовать GTM-переменную, как обычную JS-переменную. Например:
[html]
<script>
console.log({{Page URL}});
</script>
[/html]
Важно отметить, что такой подход сработает только в JS-коде, который используется внутри GTM(теги, переменные). То есть, если вы решите использовать GTM-переменную в подключаемых JavaScript-файлах или непосредственно в коде страницы, это вызовет ошибку. Связано это с тем, что GTM-переменные на самом деле являются функциями, при обращении к которым(в контексте {{name of variable}}) возвращается определенное значение только внутри GTM.
И, последнее: переменные в Google Tag Manager делятся на 2 типа, каждый из которых заслуживает отдельной статьи:
- Built-in variables, или встроенные переменные, которые создаются автоматически в каждом контейнере GTM 2.0;
- User-defined variables, переменные, которые пользователь может создавать самостоятельно.