0

我能够为 tagmanager 动态构建数据层。但它不会在 Google Analytics 中进行跟踪。

根据 google 提供的文档,我们不需要使用 datalayer.push[],因为它是在 tagmanager 代码之前呈现的。我的代码是:

<script>
dataLayer = [{
"transactionId": "4NOV2013_4830a18f-15fd-4cc5-a035-0e513d3f73bb",
"transactionAffiliation":"Registration",
"transactionTotal": 0,
"transactionProducts": [{
"sku": "Lead",
"name":"Lead",
"price": 0,
"quantity": 1
}]
    }];

</script>
<!-- Google Tag Manager -->
<noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-DEMO"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-DEMO');</script>
<!-- End Google Tag Manager -->
4

2 回答 2

0

Sridhar,您似乎列出了所有必需的参数,因此一旦电子商务标签设置正确,这应该可以工作。确保为电子商务交易添加新标签:

  • 标签类型:谷歌/通用分析
  • 跟踪类型:交易

来自 Google 跟踪代码管理器团队的完整官方文档。

还要确保您使用正确版本的 GTM 容器代码段。我可以看到您已将其中一个容器 ID 替换为GTM-DEMO,但另一个仍然可见(html?id= GTM-KMSLVD)。

仔细检查容器是否正常工作,然后使用预览/调试功能查看标签是否与 Chrome 中的GA 调试一起触发(参见附图)。如果有任何错误(如参数类型),GA Debug 将在浏览器控制台中列出所有错误消息。

在此处输入图像描述

于 2013-12-18T09:12:00.810 回答
-1

您缺少在 Universal Analytics 中使用电子商务的几种语法。您是否阅读过https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce上的文档?

您现在拥有的基本上只是保存在 GTM 中的事务,因此有几种方法可以进行实际事务。如果它在 dataLayer 中看到特定事件,您可以在 GTM 中设置规则以触发事务,这看起来像您尝试过的那样?如果是这样,那么您需要创建一个规则以在看到此数据后触发事务。

或者,您可以在放置 dataLayer 本身的结帐页面中发送整个交易。

为此,我所看到的缺少的是对电子商务 javascript 库的调用。

ga('require', 'ecommerce', 'ecommerce.js');

此外,您没有使用ga('ecommerce:send');.

使用 ecommerce.js 库时,Google 文档中的一些关键组件是:

要加载电子商务插件,请使用以下命令:

ga('require', 'ecommerce', 'ecommerce.js');

此命令必须在您创建跟踪器对象之后且在您使用任何电子商务特定功能之前执行。

ga('ecommerce:addTransaction', {
  'id': '1234',                     // Transaction ID. Required.
  'affiliation': 'Acme Clothing',   // Affiliation or store name.
  'revenue': '11.99',               // Grand Total.
  'shipping': '5',                  // Shipping.
  'tax': '1.29'                     // Tax.
});

ga('ecommerce:addItem', {
  'id': '1234',                     // Transaction ID. Required.
  'name': 'Fluffy Pink Bunnies',    // Product name. Required.
  'sku': 'DD23444',                 // SKU/code.
  'category': 'Party Toys',         // Category or variation.
  'price': '11.99',                 // Unit price.
  'quantity': '1'                   // Quantity.
});

ga('ecommerce:send');

更新:在提问者发表评论后,我想将此添加到我的答案中。需要做的是设置交易本身以在 GTM 中进行跟踪。为此,请按照以下步骤操作:

  1. 创建一个新标签并将其命名,例如“跟踪交易”。
  2. 选择“Universal Analytics”作为标签类型
  3. 选择“交易”作为跟踪类型
  4. 添加新规则并将其命名,例如“转化页”
  5. 输入 URL 包含“thank-you-page”并添加另一个字段
  6. 输入事件等于 gtm.dom

保存并发布,看看这是否能解决您的问题。

于 2013-12-17T08:48:51.423 回答