我需要阅读由Google跟踪代码管理器设置的Cookie。
现在,如果第一次为最终用户加载Google跟踪代码管理器我无法读取Cookie(因为它会在稍后发生,但不会立即发生)。
有没有一种好的方法(回调?)可以帮助我在设置后读取cookie?仅当用户第一次访问页面时,此问题才有意义。
答案 0 :(得分:2)
根据以下评论中的讨论,我建议采用以下解决方案(假设您还将网页浏览发送到Google Analytics)。示例基于Simo Ahava(优秀)博客。
(请注意,我还没有机会对其进行彻底测试,因为我目前无法为此设置创建完整的测试用例 - 可能会出现一些问题)
参考:http://www.simoahava.com/analytics/variable-guide-google-tag-manager/#1
这将返回指定名称的cookie的值(请注意使用读取值的位置,因为用户的浏览器策略总是有可能拒绝cookie。)
创建一个新变量,其中包含:
GA Cookie
_ga
参考:http://www.simoahava.com/analytics/macro-magic-google-tag-manager/#8& http://www.simoahava.com/analytics/macro-magic-google-tag-manager/#6
此回调函数将在 Pageview 发送后立即执行(即在设置_ga
cookie之后)。
使用以下代码创建自定义JavaScript宏:
function () {
return function () {
// Code to be executed in order to read the cookie:
try {
var gaCookie = {{GA Cookie}};
// Do what you need to with the cookie here:
// ...
return gaCookie;
} catch (e) {
console.log('No Universal Analytics cookie found.');
return 'N/A';
}
}
}
参考:http://www.simoahava.com/analytics/macro-magic-google-tag-manager/#8
这将执行您在 Pageview 发送后立即定义的回调函数。
在Pageview标签的字段设置选项中,设置:
hitCallback
{{callBackFunction}}
希望它可以帮助你前进。