【发布时间】:2019-04-19 22:16:38
【问题描述】:
我的 WordPress 网站 (http://robfuquay.staging.wpengine.com/) 设置为仅在用户通过附加在窗口底部的横幅同意后才允许 Google Analytics cookie。 (这是通过这个插件完成的:https://wordpress.org/plugins/cookie-notice/)
在获得同意之前,我有一个名为 ga-disable-UA-10877870-45 的 cookie,它被设置为 true。单击同意按钮时,会添加另一个 cookie cookie_notice_accepted 并设置为 true。一旦cookie_notice_accepted cookie 设置为true,ga-disable-UA-10877870-45 cookie 通过以下函数设置为false:
add_action( 'init', 'set_ga_disable_cookie_according_to_cookie_notice' );
function set_ga_disable_cookie_according_to_cookie_notice() {
if ( function_exists( 'cn_cookies_accepted' ) && function_exists('get_ua')) {
if ( cn_cookies_accepted() ) {
setcookie( 'ga-disable-'.get_ua(), 'false', 0, "/" );
} else {
if(!isset($_COOKIE['ga-disable-'.get_ua()])) {
setCookie( 'ga-disable-'.get_ua(), 'true' );
}
}
}
}
一旦ga-disable-UA-10877870-45 设置为false,在下一页加载Google Analytics cookie 设置:_ga、_gat 和gid。 (点击同意按钮后,页面会通过 Cookie Notice 插件设置自动重新加载。)
我遇到的问题是关于客户的。 Chrome、Safari 和 Opera(以及它们所有的私人浏览器)都按预期工作:接受通知、页面重新加载、Google Analytics cookie 已设置。 Firefox 也可以按预期工作,但是 Firefox 隐私浏览不会设置 Google Analytics cookie,直到有额外的页面请求。这意味着即使在页面自动重新加载后,我也必须再次刷新页面。这在我的两台 MacBook 之间是一致的。
我允许 cookie,但我没有阻止跟踪,那么为什么 Firefox 隐私浏览会这样呢?
【问题讨论】:
-
根据this page:“在私人窗口中设置的cookies暂时保存在内存中,与常规窗口cookies分开,并在你的私人会话结束时被丢弃”
标签: php wordpress firefox cookies google-analytics