Как настроить код отслеживания HTML в диспетчере тегов Google с данными идентификатора транзакции

#google-tag-manager

#google-tag-manager

Вопрос:

Я должен реализовать код пикселя отслеживания на своей странице благодарности через менеджер тегов Google. В коде пикселя есть переменная идентификатора транзакции для отслеживания транзакции. Ниже приведен код пикселя отслеживания.

 <iframe src="https://t1.example.com/p.ashx?a=284amp;e=302amp;t=TRANSACTION_ID" height="1" width="1" frameborder="0"></iframe>
  

Как мне настроить тег отслеживания, который может передавать идентификатор транзакции со страницы благодарности в код отслеживания в GTM?

Комментарии:

1. Реализован ли у вас dataLayer на вашем сайте? Содержит ли он идентификатор транзакции? Или вам нужно прочитать идентификатор из DOM?

2. Я хочу прочитать идентификатор транзакции с URL-адреса на странице благодарности, который будет уникальным для каждого клиента.

Ответ №1:

Основываясь на вашем разъяснении в вашем комментарии и предполагая, что ваши посетители приходят по похожему URL: https://www.example.com/thankyou.html?transactionId=1234

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

введите описание изображения здесь

Теперь вы можете использовать эту переменную в своих тегах и сценариях, ссылаясь на нее как {{Transaction ID}} или с помощью любой переменной GTM, которую вы выбираете и предоставляете в качестве имени переменной в GTM.

В вашем конкретном случае, основываясь на моем имени переменной на изображении, вы можете создать пользовательский тег типа HTML:

 <iframe src="https://t1.example.com/p.ashx?a=284amp;e=302amp;t={{Transaction ID}}" height="1" width="1" frameborder="0"></iframe>
  

Редактировать:

Другим вариантом было бы поместить эти данные в dataLayer и настроить переменную уровня данных для чтения ее оттуда. Например.

 <script>
  var transactionId = //your code to get the variable

  dataLayer.push({
    event: 'transaction',
    transactionId: transactionId
  });
</script>
  

В этом случае ваша настройка переменной выглядела следующим образом:

введите описание изображения здесь

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

Тем не менее, третьим вариантом может быть использование только одного пользовательского HTML, с чем-то вроде этого, где вы создаете iframe с помощью JavaScript и добавляете идентификатор транзакции в URL в src атрибуте:

 <script>
var transactionId = //your code to get the variable

var iframe = document.createElement('iframe');
iframe.style.height = "1px";
iframe.style.width = "1px";
iframe.style.border = "none";
iframe.src = "https://t1.example.com/p.ashx?a=284amp;e=302amp;t="   transactionId;
document.body.appendChild(iframe);
</script>
  

Комментарии:

1. Идентификатор транзакции в URL-адресе закодирован, и я расшифровываю его на странице благодарности. Должен ли я настроить его как переменную уровня данных? Какой тип тега я должен использовать для кода отслеживания, такого как пользовательский HTML?

2. Я добавил информацию о типе тега (пользовательский HTML) и добавил дополнительные возможные решения, которые могут лучше соответствовать вашим потребностям. Надеюсь, это поможет. Пожалуйста, дайте мне знать, если я могу помочь прояснить какие-либо части ответа.

3. Я добавил скрипт непосредственно на страницу.