繁体   English   中英

GA 发送事​​件,返回未定义

[英]GA send event, returns undefined

初始遗传算法

var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-xxxxxxxxx-6']);
    _gaq.push(['_trackPageview']);

    (function () {
        var ga = document.createElement('script');
        ga.type = 'text/javascript';
        ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(ga, s);
    })();

跟踪事件

ga('send', {
              'hitType': 'event',
              'eventCategory': 'Customer',
              'eventAction': 'Registration',
              'eventLabel': 'Popup',
              'eventValue': 0.99
            });

但这总是返回未定义,我在谷歌分析网站的转换中添加了“注册”事件(具有该类别、标签和值),

知道为什么会发生这种情况吗?

当然不会被跟踪。。

在此处输入图片说明

您正在混合使用旧式经典语法(使用 _gaq 数组)和 Universal Analytics,因此您的 ga 对象设置不正确(来自 _gaq 的跟踪器 ID 将不会在 ga 对象中使用,因此不会创建任何跟踪器)。

您的代码应如下所示:

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-XXXXXXXX-1', 'auto');
  ga('send', 'pageview');
ga('send', {
              'hitType': 'event',
              'eventCategory': 'Customer',
              'eventAction': 'Registration',
              'eventLabel': 'Popup',
              'eventValue': 1
            });

@Eike Pierstorff 实际上是对的,但有一件事:

选项 1

https://groups.google.com/g/google-analytics-analyticsjs/c/mayu2cf1d0k?pli=1 - 感谢 Brad Townsend。

可以肯定的是,在浏览器控制台中一切正常(我只测试了 Google Chrome),使用 Google Analytics 调试器插件,然后转到控制台,您将开始看到类似这样的内容:“执行/运行 Google Analytics 命令”。

尝试发送事件:

ga('create', 'UA-XXXXXXXX-Y', 'auto');
ga('send', {
              'hitType': 'event',
              'eventCategory': 'Test',
              'eventAction': 'Defined',
            });

对于每个第一个事件,您必须编写第一个命令:

ga('create', 'UA-XXXXXXXX-Y', 'auto');

或者它会记录目标未定义。

选项 2:

另外,如果您正在使用 GTM 并且只想像过去一样使用“ga('send')”,则需要在 UA-tag Tracker Name 中指定为空白:

转到 GTM,找到您的 UA-tag -> Advanced Configuration -> Set Tracker Name ("True") -> 将“Tracker Name”字段留空。

谷歌分析标签

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM