所以我有一个saas网站。它使用一个域(我们将其称为domain.com)和一个页面(我们将使用index.php)。但是,基于查询字符串,它将为特定用户加载内容。这样的例子:

http://domain.com/index.php?u=12345 Loads content for John Doe

http://domain.com/index.php?u=98765 Loads content for Jane Doe


这两个用户没有任何关系。但是,双方都希望使用自己的Google Analytics(分析)代码来跟踪特定页面的访问量。

因此,基于查询字符串,它将把每个用户的Google Analytics(分析)代码动态地拉入页面。

我不想设置一个Google Analytics(分析)帐户并授予每个用户访问权限。

有没有一种方法可以允许每个用户在自己的用户界面中设置自己的Google Analytics(分析)帐户,允许他们放置自己的跟踪代码,并仅向其报告特定查询字符串的流量?

最佳答案

一个域具有多个Google Analytics(分析)帐户/网络媒体资源ID并不是问题,但是您可能需要考虑以下几点:


是否有人可以访问多个用户页面。默认情况下,Google Analytics(分析)在根级别(/)使用Cookie,因此,如果有人访问具有不同Analytics(分析)帐户的网页,则可能会混合数据。您可以使用_setCookiePath将用户的数据分开。见_setCookiePath
您将拥有多少个用户,以及谁创建了分析配置文件? Google Analytics(分析)对一个分析帐户上的配置文件数量有严格的限制-50个配置文件,尽管可以增加到100个。单个Google用户可以创建多少个帐户也有一个限制。让用户创建自己的Google Analytics(分析)帐户/个人资料并在配置中设置其网络媒体资源ID UA-XXXXX-X可能更好。
您是否想要某种可跟踪所有站点的汇总跟踪?在这种情况下,您可以添加代码以跟踪第二个网络载体ID。


这是跟踪整个网站的示例代码,其中XXXXX-X是用于整个网站的网络媒体资源ID,YYYYY-Y是您要替换的单个用户ID。请注意,单个用户cookie路径设置为其网络媒体资源ID

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  _gaq.push(['_trackPageview']);
  var _gaq = _gaq || [];
  _gaq.push(['b._setCookiePath', '/UA-YYYYY-Y']);
  _gaq.push(['b._setAccount', 'UA-YYYYY-Y']);
  _gaq.push(['b._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>

关于google-analytics - 我可以在多个用户的单个页面/域上允许Google Analytics(分析)跟踪吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9331023/

10-14 23:46
查看更多