Передача переменной с изменяемым значением в GTM - PullRequest
0 голосов
/ 11 февраля 2020

Я бы хотел отслеживать поведение пользователей на сайте в зависимости от того, вошли они в систему или нет. Я хотел бы создать свою собственную переменную в JavaScript, своего рода userState с различными значениями, скажем, logged и guest, и я хочу передать ее так dataLayer. Как это сделать? Могу ли я сделать что-то вроде этого

dataLayer.push({‘userType’: userState})

?

1 Ответ

0 голосов
/ 12 февраля 2020

В основном это будет работать. Однако GTM будет обновлять свое внутреннее состояние только тогда, когда зарегистрировано событие GTM. Когда вы dataLayer.push({‘userType’: userState}), новое значение для userType не будет автоматически доступно. За ним должно следовать событие, либо настроенное через переменную автоматического события GTM (например, gtm.click при использовании триггера щелчка), либо пользовательское событие:

dataLayer.push({
  "userType": userState,
  "event":"updateUserState"
});

( также обратите внимание, что вы используете обратные пометки в вашем примере, что приведет к ошибке - вы должны использовать прямые или двойные кавычки).

Настраиваемое событие - это буквально ключевое «событие» с пользовательским значением, переданным в dataLayer. GTM перезаписывает метод pu sh массива dataLayer для сканирования новых нажатий на ключевое слово события, а затем обновляет доступные переменные в GTM.

...