#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. Я добавил скрипт непосредственно на страницу.