在我的网站上,如果用户拒绝使用cookie(根据欧盟电子隐私指令),我会阻止使用JavaScript跟踪Google Analytics,
window['ga-disable-UA-XXXXXX-X'] = true;
使用此命令可以禁用跟踪并且似乎有效(如果我在网站上浏览,Google Analytics不会看到任何活动)。
但我注意到__utma
,__utmb
,.... Cookie仍然在我的浏览器上(在Chrome中),因此我尝试使用php的setcookie
函数删除它们:
foreach ($_COOKIE as $key => $value) {
setcookie($key, '', time()-1000,'/','.mydomain.com');
}
但没有成功! (我在GA监控JavaScript之后插入了这段代码)我的浏览器上有GA cookie。
那么,我可以删除GA cookie吗?
或是否足以阻止GA跟踪欧盟电子隐私指令?
答案 0 :(得分:2)
是的,您可以删除Cookie。您只需将完整的Path
和Domain
参数与这些Cookie中使用的参数相匹配即可。您可以使用此代码并将参数替换为您的参数:
function deleteCookie(name) {
document.cookie = name + '=; Path=/; Domain=.example.com; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
答案 1 :(得分:2)
Google Analytics Debugger Chrome 扩展程序在测试 Google Analytics 代码方面非常有用。该扩展程序将发送到 Google Analytics 的数据输出到 JavaScript 控制台窗口。
以下是如何在禁用默认跟踪器后使用 analytics.js
删除 js-cookie
默认值的示例。
// https://github.com/js-cookie/js-cookie
import Cookies from 'js-cookie';
const disableDefaultTracker = () => {
// Remove the default tracker.
if (window.ga) window.ga('remove');
// Remove the default cookies
// _ga is used to distinguish users.
Cookies.remove('_ga', { path: '/', domain: document.domain });
// _gid is used to distinguish users.
Cookies.remove('_gid', { path: '/', domain: document.domain });
// _gat is used to throttle request rate.
Cookies.remove('_gat', { path: '/', domain: document.domain });
}
见https://developers.google.com/analytics/devguides/collection/analyticsjs/cookie-usage