Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过Google Tag Manager跟踪Universal Analytics事件?_Javascript_Google Analytics_Google Tag Manager_Event Tracking - Fatal编程技术网

Javascript 如何通过Google Tag Manager跟踪Universal Analytics事件?

Javascript 如何通过Google Tag Manager跟踪Universal Analytics事件?,javascript,google-analytics,google-tag-manager,event-tracking,Javascript,Google Analytics,Google Tag Manager,Event Tracking,使用旧版本的Analytics,我以编程方式跟踪事件,如下所示: _gaq.push(['_trackEvent', 'my-category', 'my-action', 'my-label']) 使用新的Universal Analytics,可通过以下方式进行跟踪: ga('send', 'event', 'my-category', 'my-action', 'my-label'); 这两项都会在Google Analytics面板中创建新事件,并按类别和操作分组 如何使用谷歌标签管

使用旧版本的Analytics,我以编程方式跟踪事件,如下所示:

_gaq.push(['_trackEvent', 'my-category', 'my-action', 'my-label'])
使用新的Universal Analytics,可通过以下方式进行跟踪:

ga('send', 'event', 'my-category', 'my-action', 'my-label');
这两项都会在Google Analytics面板中创建新事件,并按类别和操作分组

如何使用谷歌标签管理器?我在GTM面板中添加了Universal Analytics作为标签。现在我需要添加一段代码来触发事件,类似这样的事情

dataLayer.push({'event': ???, 'category':xx, 'action';:xx, 'label':xx});

我不想在GTM管理面板中添加任何内容。我只想在我的网站上添加一段代码,以编程方式跟踪事件,并在Google Analytics面板中显示事件。

您必须在admin面板中添加一些内容,否则这将不起作用

数据层中的“事件”意味着与GA中的事件跟踪不同的东西——Google选择使用相同的名称来表示几乎不相关的概念(那些与javascript事件共享名称的概念并不会使事情变得更容易),这让每个人都感到困惑

GTM/数据层中的“事件”是一个保留变量名,通常(但不总是)由GTM本身自动填充。事件是触发标记的事件。这可能是数据层中的页面视图、单击或自定义事件。因此,数据层事件可能用于触发Google Analytics事件,但它本身不发送任何数据(因为GTM和GA完全独立)

因此,您需要在GTM界面中创建一个单独的GA标记,并将交互类型从“pageview”更改为“event”。标记模板的字段将更改以反映此设置,即您将获得类别等的字段

然后,您将创建三个“dataLayer”类型的宏,并将“Data Layer Variable Name”分别设置为category、action和label,以拾取在数据层中设置的值。然后在GA event trackins标记的相应字段中输入宏

最后,您需要一个(GTM)事件来创建触发标记的规则。在Pageview/DOM Ready/Page loaded上,事件会自动填充(gtm.js、gtm.DOM或gtm.load),对于单击和提交,有自动事件处理程序[1](带有事件gtm.click、gtm.linkClick、gtm.formSubmit),或者您可以使用自定义事件,即将数据层中的“event”变量设置为自定义值,比如“ga_event”

然后,您可以创建一个新规则,其中包含事件eq ga_event,并使用它触发新的分析事件跟踪标记。创建版本,发布,就在这里

但是您不能直接从数据层发送任何跟踪调用,这将破坏标记管理器的用途


[1] 到目前为止,您需要将autoevent处理程序设置为单独的标记。新的GTM界面将自动处理此问题。

如您所述,此事件将显示在GTM管理面板中,而不是分析管理面板中,对吗?仅用于“事件跟踪”似乎相当复杂。我想我会坚持使用通用分析代码(ga send)代码段,现在不使用GTM。感谢您的澄清。如果您只想将GTM用于分析跟踪,那么就没有令人信服的理由使用GTM-只有当您有各种定期更改的标签时,GTM才有用。