我正在尝试排除 all 包含 php 查询(?在 url 中)的 URL。
例子:
mysite.com/mypage?Go_Away
应该通过谷歌分析注册为
mysite.com/mypage
我确定有一种方法可以使用过滤器,但如果可以的话,我宁愿使用 Google Analytics Exclude URL Query Parameters 选项。
我正在使用
/?
哪个应该注册为问号而不返回任何带有 ?在他们身上,但它仍在这样做......
有人对我如何实现这一目标有任何想法吗?
“排除查询参数”采用命名参数列表(使用 ?param=Query 你不需要输入“param”)。这对你不起作用。所以你要么必须使用过滤器,要么在你的跟踪代码中使用虚拟 url 并传递没有参数的 url(例如,如果你使用异步跟踪代码,你可以使用 window.location 对象的“路径名”属性作为您的 trackpageView 调用的第二个参数)。
在 Google Analytics 4 中,不再有用于排除查询参数的字段。
为此,您首先必须区分两种设置 GA4 的方式:
function cleanPageLocation() {
// define parameters to exclude
var excludeStrings = [
"Go_Away"
];
var addressString = new URL(document.location);
var queryString = addressString.search;
// check if query string holds any parameters, otherwise just return the url without them
if (queryString.indexOf("?") != -1) {
// https://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript
var getQueryParamsFromURL = function getQueryParamsFromURL() {
var match,
search = /([^&=]+)=?([^&]*)/g,
decode = function decode(s) {
return decodeURIComponent(s);
},
query = addressString.search.substring(1);
var urlParams = {};
while ((match = search.exec(query))) {
urlParams[decode(match[1])] = decode(match[2]);
}
return urlParams;
};
// create param object from query string
var urlParams = getQueryParamsFromURL();
// if it holds any of the defined parameters, remove the key and keep the rest
Object.keys(urlParams).map(function (key) {
if (excludeStrings.includes(key)) delete urlParams[key];
});
// Create filtered query string
var queryString = new URLSearchParams(urlParams).toString();
// add ? to querystring unless it's empty
if (queryString != "") queryString = "?" + queryString;
}
// return cleaned URL
return addressString.origin + addressString.pathname + queryString;
}
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=...your id...">
</script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'YOUR-ID-HERE', {
'page_location': cleanPageLocation(),
});
</script>
page_location
并将其作为 JS 变量的值
https://bluerivermountains.com/en/ga4-query-parameter-exclusion