在发送到 google analytics 之前从 url 中删除查询参数
Strip query parameters from url before sending to google analytics
我在页面上使用标准 Google 分析代码段将信息发送到 google 分析。
由于各种原因,我的页面是通过查询参数到达的。
在理想世界中,情况并非如此,但它不是一个完美的世界,所以 我必须避免将其发送到 google 分析,因为它包含个人信息.
我试过以下方法:
这里建议的是:,如下:((抱歉格式化实在是不会打球D:)
_gaq.push(['_trackPageview', location.pathname ]);
(function(i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject']=r;
i[r]=i[r]||function() {
(i[r].q=i[r].q||[]).push(arguments)
}, i[r].l=1*new Date();
a=s.createElement(o), m=s.getElementsByTagName(o)[0];
a.async=1;
a.src=g;
m.parentNode.insertBefore(a,m)
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
ga('create', '@gaToken', 'auto');
ga('send', 'pageview', location.pathname);
我一直在手动向 url 添加查询参数并使用 ObservePoint 检查内容。内容信息包含“http://localhost/my/url/page?uiop=qwert”的文档位置 URL...这似乎意味着 _gaq.push 行根本没有做任何事情。
我尝试深入研究该功能并手动更改 url,但它只是导致页面刷新无限循环:
(函数(i, s, o, g, r, a, m) {
警报(i.location.href);
var locn = i.location.href.indexOf("?")
i.location.href = i.location.href.substring(0, locn)
我['GoogleAnalyticsObject']=r;
i[r]=i[r]||函数(){
(i[r].q=i[r].q||[]).push(参数)
}, i[r].l=1*new Date();
a=s.createElement(o), m=s.getElementsByTagName(o)[0];
a.async=1;
a.src=g;
m.parentNode.insertBefore(a,m)})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');ga('create', '@gaToken', 'auto');
我无权访问跟踪代码管理器,我认为这可能是一个基于以下选项的选项:http://www.lunametrics.com/blog/2015/04/17/strip-query-parameters-google-analytics/
任何建议将不胜感激,我已经无计可施了:(
(为格式道歉,它不合作:(
您的第一个选项是正确的,但您使用的代码是针对以前版本的 Google Analytics。
而是将 ga('send', 'pageview');
替换为 ga('send', 'pageview', location.pathname);
请参阅 page tracking documentation 以供参考。
您可以尝试使用 Google 标签管理器:在标签的设置中,有一个名为 'Fields to set' 的选项,您可以在其中手动编辑发送至 [=19] 的任何信息=] 分析(请注意,这发生在本地,因此可以解决您的数据保护问题)。
这是我手动编辑 'Page field' 的示例,这就是您需要做的。在这种情况下,我选择了一对自定义变量来输入,但您可能需要一个自定义 JavaScript 变量,它采用标准 {{Page Path}} 变量(这是由默认)和 returns 第一个问号之前的所有内容。
我在页面上使用标准 Google 分析代码段将信息发送到 google 分析。
由于各种原因,我的页面是通过查询参数到达的。
在理想世界中,情况并非如此,但它不是一个完美的世界,所以 我必须避免将其发送到 google 分析,因为它包含个人信息.
我试过以下方法:
这里建议的是:,如下:((抱歉格式化实在是不会打球D:)
_gaq.push(['_trackPageview', location.pathname ]);
(function(i, s, o, g, r, a, m) { i['GoogleAnalyticsObject']=r; i[r]=i[r]||function() { (i[r].q=i[r].q||[]).push(arguments) }, i[r].l=1*new Date(); a=s.createElement(o), m=s.getElementsByTagName(o)[0]; a.async=1; a.src=g; m.parentNode.insertBefore(a,m) })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); ga('create', '@gaToken', 'auto'); ga('send', 'pageview', location.pathname);
我一直在手动向 url 添加查询参数并使用 ObservePoint 检查内容。内容信息包含“http://localhost/my/url/page?uiop=qwert”的文档位置 URL...这似乎意味着 _gaq.push 行根本没有做任何事情。
我尝试深入研究该功能并手动更改 url,但它只是导致页面刷新无限循环:
(函数(i, s, o, g, r, a, m) { 警报(i.location.href); var locn = i.location.href.indexOf("?") i.location.href = i.location.href.substring(0, locn) 我['GoogleAnalyticsObject']=r; i[r]=i[r]||函数(){ (i[r].q=i[r].q||[]).push(参数) }, i[r].l=1*new Date(); a=s.createElement(o), m=s.getElementsByTagName(o)[0]; a.async=1; a.src=g; m.parentNode.insertBefore(a,m)})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');ga('create', '@gaToken', 'auto');
我无权访问跟踪代码管理器,我认为这可能是一个基于以下选项的选项:http://www.lunametrics.com/blog/2015/04/17/strip-query-parameters-google-analytics/
任何建议将不胜感激,我已经无计可施了:(
(为格式道歉,它不合作:(
您的第一个选项是正确的,但您使用的代码是针对以前版本的 Google Analytics。
而是将 ga('send', 'pageview');
替换为 ga('send', 'pageview', location.pathname);
请参阅 page tracking documentation 以供参考。
您可以尝试使用 Google 标签管理器:在标签的设置中,有一个名为 'Fields to set' 的选项,您可以在其中手动编辑发送至 [=19] 的任何信息=] 分析(请注意,这发生在本地,因此可以解决您的数据保护问题)。
这是我手动编辑 'Page field' 的示例,这就是您需要做的。在这种情况下,我选择了一对自定义变量来输入,但您可能需要一个自定义 JavaScript 变量,它采用标准 {{Page Path}} 变量(这是由默认)和 returns 第一个问号之前的所有内容。