javascript - 传递到 Facebook 购买事件时 GTM Datalayer 变量未定义

标签 javascript facebook google-tag-manager google-datalayer facebook-pixel

我为 Facebook 的购买事件创建了一个自定义 HTML 标记,其中包含 3 个自定义变量。

它们引用 dataLayer 中的数据,但 Facebook Pixel Helper 将所有 3 个值显示为未定义:

<script>
fbq('track', 'Purchase', {
  content_name: '{{transactionId}}',
  value: '{{transactionTotal}}',
  currency: '{{transactionCurrency}}'
});
</script>

<noscript>
<img height="1" width="1" border="0" alt="" style="display:none" 
src="https://www.facebook.com/tr?id=0000000000000&ev=Purchase&cd[content_name]={{transactionId}}&cd[value]={{transactionTotal}}&cd[currency]={{transactionCurrency}}" />
</noscript>

dataLayer values working

Facebook-Pixel-helper

知道为什么数据无法正确传递到 Pixel 中吗?

最佳答案

我发现触发器在页面 View 上触发,并且此时 dataLayer 变量未定义,将触发器切换为在 DOM 上触发,修复了它。

关于javascript - 传递到 Facebook 购买事件时 GTM Datalayer 变量未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46807764/

相关文章:

javascript - 如何在 jquery 中的 foreach 之后插入最后一项?

javascript - 将 javascript 传递给函数

iphone - iOS Facebook SDK 3.1 登录时添加权限

Facebook Like Box 无法使用

google-analytics - Google跟踪代码管理器在无限滚动网站上触发

google-analytics - 带有打印事件的按钮单击事件

javascript - 更改 url 无需重新加载页面

javascript - ECMAScript 2017 : EscapeSequence in StringLiteral

javascript - 向span标签添加href

Facebook Feed 对话框参数与开放图元标签