我通过以下脚本在我的网站的隐藏字段中保存Google Analytics客户端ID:
// Assuming you are using jQuery
$(document).ready( function() {
// Makes use of the Universal Analytics API 'ga' object
ga(function(tracker) {
var clientId = tracker.get('clientId');
$("clientId").val(clientId);
});
});
然后将其发送到我的服务器。
但有时用户提交表单并且我的数据库中没有保存分析客户端ID。
所以我的问题是:何时设置Analytics Client ID?
仅限用户使用Google帐户登录?
答案 0 :(得分:1)
只要您向GA服务器发送匹配,就会设置/生成客户端ID。因此,如果您在发送了综合浏览量后尝试阅读clientId,则应始终获取客户端ID。
希望这能回答你的问题。
你也可以尝试这样的事情:
ga('create', 'UA-XXXXXXX-Y');
ga('send', 'pageview');
ga(function() {
$(document).ready(
// Set the field value.
);
});
答案 1 :(得分:0)
此clientId的设置频率是多少?为什么不设置它可能有几种可能性。
(1)部分用户屏蔽Google Analytics。谷歌甚至提供this tool,允许他们这样做。
(2)如果您的Javascript在加载analytics.js库之前正在运行,则跟踪器对象可能尚不存在。
我的理解是$(document).ready不保证analytics.js已加载并创建了跟踪器实例。这是因为跟踪代码脚本引用被动态注入到页面中,以确保它在原始HTML中引用的所有资源之后加载。关于文档就绪事件discussed here加载Google Analytics脚本的问题。
您的网站访问者无需登录Google即可获得clientId。