所以我有一个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/