Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.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 从标记管理器数据层获取变量_Javascript_Google Analytics_Google Tag Manager - Fatal编程技术网

Javascript 从标记管理器数据层获取变量

Javascript 从标记管理器数据层获取变量,javascript,google-analytics,google-tag-manager,Javascript,Google Analytics,Google Tag Manager,我试图获取推送到数据层的变量,作为分析事件跟踪的一部分。这些值将与以下内容一起添加: dataLayer.push({ 'location' : 'header', 'linkname' : gaTrackInfo }); 使用console,我可以看到正在创建这些变量: 在Tag Manger UI中,我设置了宏以监视以下变量: 我试图让他们参与事件跟踪,比如: 然而,当我观看实时分析时,这些变量总是空白的: 因此,从屏

我试图获取推送到数据层的变量,作为分析事件跟踪的一部分。这些值将与以下内容一起添加:

 dataLayer.push({
            'location' : 'header',
            'linkname' : gaTrackInfo
        });
使用console,我可以看到正在创建这些变量:

在Tag Manger UI中,我设置了宏以监视以下变量:

我试图让他们参与事件跟踪,比如:

然而,当我观看实时分析时,这些变量总是空白的:

因此,从屏幕中的示例中,我希望看到类别testinglocheader,但它只返回testingloc。任何关于我应该寻找什么来测试这个的建议。我知道它正在跟踪并发送事件,只是数据层总是缺少这些值

尝试取消选中数据层变量上的“设置默认值”。我相信这会覆盖您传递的任何值。还有,你的规则是什么样的

编辑:
我发现了问题。您需要使用onclick发送一个事件

修复步骤:

步骤1:创建一个新的事件宏。我通常称我的为trackEvent

步骤2:将该事件添加到datalayer.push(需要事件宏才能将事件类型操作传递到GTM):

步骤3:删除
{{url}}匹配的正则表达式。*
并添加
{{event}}等于trackEvent


步骤4:发布容器。

感谢您的回复。我试着取消勾选,但没什么区别,除了我的自定义{{}变量之外,所有东西都再次通过了。我的规则设置为在所有页面上启动:
{{url}}匹配正则表达式。*
WOO-HOO!这很有效。非常感谢,我不知道我是否能从现有的文档中找到答案。是的,我也花了一段时间才找到答案。有一些次要的,但你得挖掘一下。干杯
    dataLayer.push({
      'event': 'trackEvent',
      'location': 'header',
      'linkname': gaTrackInfo
    });