8

我在我们公司的内部软件上使用 UA 来帮助了解我们的用户如何使用它,其中一部分是了解他们点击时点击的内容等等。

增强的链接归因似乎是最好的选择,但根据开发者文档:

标记您的页面以增强链接归属

为了实现此附加标记以增强链接归因,您必须使用 Analytics 跟踪代码的异步版本

我看到的问题是,目前,我正在使用 Universal Analytics,analytics.js而 GA 的异步版本使用ga.js. 所以现在我很困惑,因为该选项在我们 GA 帐户管理部分的属性设置中可用。

通用分析

  <script>
    (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-CODE-HERE', 'SITE_URL');
    ga('send', 'pageview');

  </script>

异步代码

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _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);
  })();

</script>

由于 GA 的两个版本不兼容,我还能使用 Enhanced Link Attribution 吗?如果是这样,我会采取什么步骤?我似乎无法在与 UA 的 ELA 相关的 Google Analytics 文档中找到答案。

编辑 是否有可能或建议在同一页面/站点/属性上使用两个版本的 Google Analytics?假设我为标准版本设置了另一个 GA 属性并在网站上使用了两个 JS 片段?

4

4 回答 4

6

回答最初的问题:不,Universal Analytics 尚不支持增强链接归因。尽管此功能和许多其他功能将很快推出。Universal Analytics 仍处于测试阶段,但已经确定这是谷歌分析的未来。

是的,新代码和旧代码一样是异步的,我真的无法想象你会想要关闭它的情况。在这种情况下,异步加载意味着当分析 javascript 触发时,无论 javascript 是否完成加载,您的网页都会继续加载。在异步代码片段更新之前,最好将分析代码加载到页脚中,以防止由于脚本本质上不是异步的而导致整个页面挂起。虽然这发生了改变,因为在长/慢页面上,用户通常会在页脚/javascript 有机会加载之前与网站交互,从而导致数据出现重大差异。

维基百科:

在计算机编程中,异步事件是独立于主程序流发生的事件。异步动作是在非阻塞方案中执行的动作,允许主程序流继续处理。

我也不建议像 Concept Rat 所建议的那样更改对象名称,因为我相信这仅适用于您对同一片段中的不同 Web 属性实施多个“通用分析”跟踪器的情况。

https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#snippet

重命名全局对象

在某些情况下,页面上的现有对象可能已经使用了 ga 变量名称。为避免覆盖现有对象,您可以重命名 ga 函数,例如重命名为 __gaTracker。为此,只需替换上面代码片段中的 ga 参数:

(函数(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) })(窗口,文档,'脚本','//www.google-analytics.com/analytics.js ','__gaTracker');

然后在调用命令时可以使用 __gaTracker 代替 ga :

__gaTracker('create', 'UA-XXXX-Y'); __gaTracker('send', 'pageview');

如果重命名变量是加载两个片段所必需的,我不相信谷歌会这样说:

https://developers.google.com/analytics/devguides/collection/analyticsjs/

analytics.js 片段是 Universal Analytics 的一部分,目前处于公开测试阶段。新用户应该使用 analytics.js。现有的 ga.js 用户应该为 analytics.js 创建一个新的网络媒体资源,并对他们的网站进行双重标记。在同一页面上同时包含 ga.js 和 analytics.js 片段是完全安全的。

另请注意,如果您想尝试通用分析,您应该与现有实施同时运行它,因为他们最终应该发布迁移工具以保持向后兼容,从而允许您保留现有数据。明确地说:只有在创建一个没有现有数据的全新帐户时,才应该完全实施通用分析。

于 2013-05-20T17:04:14.303 回答
3

我一直在研究同样的问题。截至 2012 年 11 月,谷歌在回答支持问题时表示:“尚未实现对 analytics.js 的页内分析支持。这是我们将在测试版稍后开发和引入的功能之一。目前不支持的其他功能包括再营销和 AdSense 报告。” 如您所知,增强的链接归因是页内分析的一项功能。

自从那篇帖子以来,我没有找到任何关于这个问题的新参考,所以我只能假设他们的 Universal Analytics 还没有准备好迎接黄金时段。如果可以的话,我会尝试使用异步代码,直到 Universal Analytics 正常工作。

于 2013-04-19T22:37:55.340 回答
2

仅供参考:Universal Analytics 已完成 Beta 测试,现在支持增强型链接归因:

https://support.google.com/analytics/answer/2558867?hl=en

于 2014-04-08T00:43:10.933 回答
0

供您参考,Universal Analytics 是或确实支持异步模式。您可以在“脚本”标签“a.async=1;”下的 Universal JS 代码第三行中看到它。

您还可以同时运行标准 GA 代码和通用代码。只需为通用代码设置一个单独的属性,并确保将您在第四行“//www.google-analytics.com/analytics.js','ga')”中看到的对象名称“ga”更改为说“gau”(只需要在脚本页面上是唯一的)。然后使用 "gau(" 而不是 "ga(" 进行设置等。请记住,这仅适用于通用代码而不是标准 GA。

完成此操作后,您可以继续使用标准 GA 跟踪事物,并在新属性下使用通用 GA 记录。一旦你对事情感到满意,你就可以切换到只使用通用的。

于 2013-05-10T01:38:30.477 回答