Analytics

#GTMTips:

Одно из Диспетчера тегов от Google старейших и самых надежных признаков является то, что она «замораживает» состояние данных переменных в момент, когда триггер событие произошло. Таким образом, какие-либо теги стрельбе на курок (и все переменные на этот триггер события) всегда будут иметь доступ к тем же значением каждой переменной слой данных.

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

Совет 98: получить доступ к последним значением слоя данных переменной

#GTMTips:

Например, скажем, ваш сайт имеет пользовательский прослушиватель событий, построенных для обнаружения, когда пользователь собирается покинуть страницу (с помощью beforeunload пользовательское событие). Однако, вы только хотите послать это событие, если пользователь выходит из системы, для какой-то неясной причине.

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

<скрипт>
 (функция() {
 окна.метода метода addEventListener('beforeunload', функция() {
 если ({{ДЛВ - loginStatus}} = = = вход-выход') {
окна.уровень данных.поштовх({
 событие: 'userLeavesPages'
});
}
});
})();
</скрипт>

Теперь, когда пользовательский тег html и пожаров, beforeunload слушателя создается, и {{ДЛВ — loginStatus}} переменная решил, что значение, которое он имел, когда тег уволили.

Затем, когда пользователь собирается покинуть страницу, закрыть браузер или нажав на ссылку, beforeunload обратного вызова выполняется, и проверки, если это первоначальное состояние loginStatus — это “вход-выход”, в этом случае он выполняет уровень данных.нажать().

Вы видите здесь проблему? В beforeunload событие не срабатывает до тех пор, пока пользователь пытается покинуть страницу, но {{ДЛВ — loginStatus}} разрешается в любое значение, это было, когда тег сам был изначально запущен. Если loginStatus изменения , пока пользователь находится на странице, это ничего не изменит. Начальное значение является то, что используется в случае, если... состояние, значит, вы будете рисковать потерять действительный попадает из-за этого.

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

Для этого мы используем метод на JavaScript, который встроен в Диспетчер тегов от Google и позволяет нам сделать именно это.

окна.google_tag_manager[{{контейнер идентификатор}}].уровень данных.вам('variableNameHere');

Не забудьте включить код контейнера встроенной переменной для этого.

Этот метод опросов ГТМ внутренней модели данных и извлекает последнее значение из variableNameHere переменная уровня данных. Так вот, чтобы изменить оригинальный пример, вот то, что вы в конечном итоге с:

<скрипт>
 (функция() {
 окна.метода метода addEventListener('beforeunload', функция() {
 если (окна.google_tag_manager[{{контейнер идентификатор}}].уровень данных.вам('loginStatus') === 'вход-выход') {
окна.уровень данных.поштовх({
 событие: 'userLeavesPage'
});
}
});
})();
</скрипт>

Теперь если... условие проверяет, что последний стоимость loginStatus , и он будет работать хорошо, если его состояние изменяется, когда пользователь находится на текущей странице.

Это простой трюк, но могут пригодиться при работе с idiosyncractic способ ГТМ по замораживания переменных состояния в течение каждого события.

Related posts

Андроид

admin

Тестирование настройки sendBeacon для отправки данных

admin

Дорогая, мы убиваем Интернет

admin

Leave a Comment