Менеджер тегов Google - возвращение ссылки из другого элемента при срабатывании тега клика - PullRequest
0 голосов
/ 08 февраля 2019

Я работаю в Google Tag Manager / Analytics для сайта, вот пример страницы, с которой запускается тег:

https://www.forktrucktraders.co.uk/listings/refurbished-combilift-multi-directional-gas/

Тег запускается, когдаНажата кнопка «Отправить сообщение» в контактной форме:

https://imgur.com/a/qTPb3Ci

Сейчас у меня есть действие события, возвращающее URL текущей страницы, с которой была отправлена ​​форма, ноЯ хотел бы знать, возможно ли получить ссылку на ссылку "Посетить веб-сайт дилера" на странице, поскольку это даст более быстрое представление о том, от какого дилера поступает листинг.Возможно, это будет далеко не единственное, что можно сделать с помощью диспетчера тегов (если не просто скрытый бит данных, в котором просто есть имя дилера на кнопке «Отправить сообщение»), но я буду признателен за любой ввод.

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Вы, безусловно, можете.Вне моей головы что-то вроде следующего должно работать ...

Это зависит от того, предпочитаете ли вы просто использовать URL или разбивать его дальше.

ПростоURL:

Создайте следующее в пользовательском теге HTML в GTM

<script>
//This selects your desired href:

var dealerURL = document.querySelector(".stm-dealer-image-custom-view a").href;

//This pushes the value into the dataLayer temporarily for use later:

window.dataLayer.push({
event: 'formSubmit',
dealer: dealerURL
})
</script>

В идеале, это должно срабатывать при загрузке всех ваших страниц списков.

  • Далее создайте новую определяемую пользователем переменную типа var dataLayer в GTM, соответствующую дилеру, в ней будет храниться значение, которое будет отображаться в вашем событии.
  • Теперь просто измените действие события на{{дилер}} (или как вы в итоге назвали переменную слоя данных), и это значение должно быть указано в вашем событии.

Получение имени дилера:

Теперь, предполагая, что формат href всегда одинаков для всего сайта, вы можете вместо этого разделить его на разделитель:

var dealerURL = document.querySelector(".stm-dealer-image-custom-view a").href;
var dealerSplit = dealerURL.split("/");
var dealer = dealerSplit[4];

Приведенное выше оставит вас с переменной, содержащей строку 'hitec».

Это, однако, довольно часто ломается, если путь к странице не всегда соответствует одному и тому же формату, поэтому лучше использовать RegEx.

0 голосов
/ 08 февраля 2019

Чтобы ответить на ваш конкретный вопрос, вам нужно создать переменную для таргетинга на этот конкретный элемент ссылки, который содержит URL-адрес веб-сайта дилера.Самый простой способ - добавить идентификатор к элементу <a> и создать переменную в GTM для его отслеживания.

Я быстро просмотрел ваш сайт и думаю, что у вас больше проблем с формой.

  1. Ваши даже триггеры без проверки формы, это может привести к дополнительным событиям.
  2. Категория события, действие и метка могут использовать некоторую работу при ее организации, чтобы помочь вам проанализировать данные
  3. У вас также есть смесь gtag.js и фрагмента GTM на странице, я бы сказал, что это ненормальная практика, обычно GTM достаточно.Вы можете связаться со мной через мой профиль, если хотите больше об этом поговорить.
...