Мы используем Google Analytics gtag в JavaScript, но у нас есть проблемы с зарегистрированными данными.
У нас есть код отслеживания в файле .js, на который мы ссылаемся на каждой странице.Затем мы вызываем его при «загрузке» страницы.
Проблема в том, что при переходе с одного URL-адреса на другой URL-адрес с другим относительным URL-адресом сайта он регистрирует неправильный URL-адрес в поле «Пользовательское измерение».
Например,
URL: https://example.com/sites/mysite1
затем щелкните ссылку на другой сайт:
URL: https://example.com/sites/anothersite
Если я отлаживаю его и устанавливаю точку останова, SiteCollectionURL имеет правильное значение https://example.com/sites/anothersite. Даже используя Dev Tools -> Network, он передает правильный URL-адрес в "https://www.google -analytics.com/ collect"вызов по параметру cd1.
Ниже приведен код:
function LogGoogleAnalytics(userId) {
//Format 'UA-{Number}-1'
var trackingId = 'UA-XXXXXXXXX-1';
var gaTagScript = document.createElement("script");
gaTagScript.type = "text/javascript";
gaTagScript.src = 'https://www.googletagmanager.com/gtag/js?id=' + trackingId;
gaTagScript.async = true;
document.head.appendChild(gaTagScript);
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', trackingId, {
'custom_map': {
'dimension1': 'SiteCollectionURL',
'dimension2': 'UserID'
}
});
var siteUrl = getSiteCollectionURL();
gtag('event', 'pageview_sitecollectionurl', { 'SiteCollectionURL': siteUrl, 'UserID': userId });
}
function LoadGoogleAnalytics() {
//Do Some Stuff
//Then Call
LogGoogleAnalytics(gaUserID);
}
window.addEventListener ?
window.addEventListener("load",LoadGoogleAnalytics,false) :
window.attachEvent && window.attachEvent("onload",LoadGoogleAnalytics);
Я что-то здесь упускаю?Есть ли кеширование, которое использует gtag, чтобы оно передавало «одинаковые» значения при перенаправлении на другую страницу?