Перейти к основному содержимому

Переменная

Краткое содержание

Переменная — объект с постоянным именем и изменяющимся значением, зависящим от действий на сайте. Например, значение может представлять сумму транзакции.

Переменные в триггерах
Используются для настройки фильтров, определяющих условия запуска тега. Пример: активация триггера «Просмотр страницы» при наличии Page URL с адресом mts.ru.

Переменные в тегах
Позволяют получать динамические значения, например, сбор данных о транзакциях через связанные теги отслеживания конверсий.

Управление переменными

  • Создать переменную:

    1. Перейти в контейнер и выбрать Создать...Переменная.
    2. Настроить и сохранить переменную. Изменения отобразятся в разделе «Обзор».
    3. Если контейнер установлен, переменная автоматически добавится в код при публикации.
  • Все переменные находятся в разделе «Переменные» контейнера. Можно редактировать, останавливать, публиковать или удалять.

  • Скопировать переменную:

    1. Открыть форму редактирования переменной.
    2. Выбрать ДругоеКопировать.
  • Откатить изменения:

    1. Открыть форму редактирования переменной.
    2. Выбрать ДругоеОткатить изменения.

Типы переменных

  • Переменная автоматического события возвращает значения, связанные с действиями пользователя (например, element, elementType, elementAttr).
  • Константа — фиксированное значение, используемое повторно для одинаковых тегов.
  • Собственный файл cookie — извлекает значение cookie, указав его название.
  • Переменная уровня данных — получает данные из dataLayer через ключ-значение.
  • Элемент DOM — возвращает текст или атрибуты элемента по CSS-селектору.
  • Видимость элемента — проверяет, отображается ли элемент (True/False).
  • Переменная JavaScript — возвращает значение глобальной переменной, заданной в коде страницы.
  • Собственный код JavaScript — позволяет запускать пользовательский код для вычисления значения.
  • Номер опубликованной версии — хранит номер текущей версии контейнера.

Формат значений переменной
Возможности: изменение регистра, замена null, undefined, true, false, экранирование символов для защиты от XSS-атак.

Переменная — объект, у которого есть постоянное имя и может меняться значение. Значение меняется в зависимости от действий на сайте. Например, в значении переменной может указываться сумма транзакции.

Заметка

Переменные в триггерах

Применяются для настройки фильтров, которые определяют, когда запускать тег. Например, активация триггера «Просмотр страницы», когда переменная Page URL содержит адрес mts.ru.

Переменные в тегах

Используются для получения динамических значений. Например, собор данных о транзакциях, когда переменная связана с тегом отслеживания конверсий.

Управление переменными

Создать переменную

  1. Перейдите в контейнер. Откроется рабочая область.

  2. Кликните на Создать...Переменная

variableadd

  1. Настройте переменную и сохраните её. Подробнее про настройку переменных — ниже. Все изменённые и добавленные объекты появятся в рабочей области — раздел «Обзор».

  2. Если контейнер установлен, по клику на Опубликовать переменная добавится в код контейнера автоматически.

Все переменные

Все созданные переменные находятся в контейнере — раздел «Переменные». Далее их можно редактировать, останавливать, публиковать и удалять

variableadd

Скопировать переменную

Чтобы дублировать переменную:

  1. В рабочей области кликните на переменную, откроется форма Редактирования.

  2. Выберите ДругоеКопировать

img

Копия переменной сразу появится в форме редактирования — её можно править, сохранять и публиковать.

Откатить изменения переменной

Внесённые изменения в переменную можно отменить. Тогда переменная откатится до состояния, в котором она была на момент создания рабочей области.

  1. В рабочей области кликните на переменную. Откроется форма Редактирования.

  2. Выберите ДругоеОткатить изменения

img

Переменная мгновенно откатится до изначального состояния в версии.

Типы переменных

Переменная автоматического события

Переменная возвращает только значение, которое соответствует её типу и содержит информацию о действии пользователя, которое её вызвало

Тип переменнойПеременная возвращает
elementобъект элемента. Его можно использовать как объект для собственного кода JavaScript, например {{Element}}.title
elementTypeтип элемента (HTML-тег, например, a, Button, img)
elementAttrзначение атрибута. Для корректной работы переменной укажите название атрибута. Если вы используете эту переменную, заполните поле Атрибут. Атрибут уточняет поведение или свойства переменной.
elementClassesзначение атрибута class элемента
elementIdзначение атрибута id
elementTargetзначение атрибута target (например, _blank)
elementTextзначение текста элемента
elementUrlURL элемента, полученный из атрибута href или action
oldHistoryStateстарый объект состояния истории, управляемый вызовами pushState
newHistoryStateновый объект состояния истории, управляемый вызовами pushState
oldUrlFragmentфрагмент URL, который использовался ранее, из истории браузера (например, #intro)
newUrlFragmentновый фрагмент URL из истории браузера (например, #summary)
historyChangeSourceсобытие, которое изменило историю (например, pushState, replaceState)
historyOldUrlURL, с которого перешли. Актуально, если используется History API
historyNewUrlURL, на который перешли. Актуально, если используется History API

Константа

Константа всегда принимает фиксированное значение, которое вы указываете в поле Значение. Переменная может использоваться повторно, например, для нескольких тегов с одинаковыми значениями.

Чтобы извлечь значение cookie в переменную достаточно только корректно указать название вашего файла cookie. Если в нескольких путях или на разных уровнях одного домена используются файлы cookie с одинаковым названием, выбирается первый из них (тот, который будет идти первым в списке, если вызвать функцию document.cookie со страницы сайта).

Вы также можете включить URI-декодирование файла cookie при необходимости. Когда файл сохраняется на компьютере, некоторые символы могут быть закодированы для безопасности или обеспечения совместимости с URI-форматом.

Переменная уровня данных

Содержит информацию, которая передается с уровня данных в МТС Тег. Когда вы используете уровень данных, происходит передача данных ключ-значение.

Ключ укажите в поле Имя переменной уровня данных. Значение задается при помощи вызова

dataLayer.push():
dataLayer.push({'Data Layer Name': 'value'}).

Data Layer Name — название уровня данных. Если в вашем проекте используется другое название, укажите его в коде.

Точки в ключе интерпретируются как переход на следующий уровень во вложенных структурах. Например, в

dataLayer.push('m.t.s': 'value')

Название ключа будет интерпретировано как

m.t.s {'m.t.s': 'value'}.

Элемент DOM

Переменная возвращает текстовое содержимое любого элемента DOM и значения любого атрибута-элемента DOM. В поле querySelector элемента укажите его CSS-селектор. В поле Название атрибута — имя атрибута.

Если имя атрибута задано, переменной будет присвоено значение из этого атрибута. Если имя атрибута не задано, значение переменной будет содержать текст, который находится в элементе DOM.

Видимость элемента

Позволяет определить был ли виден элемент в интерфейсе в браузере пользователя. Для определения элемента введите его ID или селектор CSS (querySelector, проверяется на видимость). Значение возвращается в формате True (полностью показывается) или False (не показывается на экране).

Переменная JavaScript

Возвращает значение глобальной переменной JavaScript, имя которой вы указали в поле Имя глобальной переменной. Используйте этот тип переменной, если её значение задано в коде страницы

Например, если var NameVar = 10, переменная вернет значение 10.

Собственный код JavaScript

Универсальная переменная для запуска собственного JavaScript. Значение переменной рассчитывается функцией в браузере. Например,

function () {
var date = new date ();
return date.getDate();
}

Номер опубликованной версии

Переменная хранит номер опубликованной версии контейнера, которая сейчас работает на странице. Используйте переменную, чтобы сократить время на проверку номера версии во время тестирования, — не искать его вручную.

Формат значений переменной

Формат значенияОписание
Изменить регистр символовВозможность изменить регистр возвращаемого значения пользовательской веб-переменной на верхний/нижний
Преобразовать null в другое значениеВозможность изменить null значения в параметрах переменной на введенное
Преобразовать undefined в другое значениеВозможность изменить undefined значения в параметрах переменной на введенное
Преобразовать true в другое значениеВозможность изменить true значения в параметрах переменной на введенное
Преобразовать false в другое значениеВозможность изменить true значения в параметрах переменной на введенное
Экранирование символов для защиты сайтаЗащита сайта от XSS-атак. Экранирование символов не позволит злоумышленнику внедрить на страницу JavaScript-код, который не был предусмотрен разработчиками, и украсть данные пользователей