在 Matomo(piwik) 中跟踪动态变化的自定义变量
Tracking a dynamically changing custom variable in Matomo(piwik)
我正在使用 Matomo 在在线仪表板上跟踪用户;这是标准票价,没有任何异常,我只使用了两个自定义变量。这两个自定义变量值可以说是静态的,因为它们是在使用用户用户名及其角色生成页面时填充的。静态的东西,只要他们登录就不会改变。
现在我还想跟踪他们正在执行的一些不涉及页面加载的操作。更准确地说,主导航可以在 slim/collapsed 版本和完全扩展版本之间动态切换。我想跟踪用户是否扩展了菜单。问题是用户可以即时更改它。
我有两种方法来检查用户是否展开了导航:检查元素或 cookie 上的 class。当用户在展开的导航之间切换时,设置会保存到 cookie 中,因此选择会在整个页面加载过程中保持不变。
如何跟踪可以动态更改的内容?我不是经验丰富的 matomo 用户,所以我真的不知道明显的答案。我还注意到了一种叫做自定义维度的东西,也许这能帮到你?
如果有帮助,这里是代码,虽然它是一个非常标准的票价:
<script type="text/javascript">
var _paq = window._paq || [];
_paq.push(["setCustomVariable", 1, "UserName", "value set on page generation", "visit"]);
_paq.push(["setCustomVariable", 2, "RoleTemplate", "value set on page generation", "visit"]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function () {
var u = "https://myanalyticsurl.com/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '1']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
网站 asp.net 基于 mvc 5。
好吧,无论如何,这就是我想出的,它不是我想要的,但它现在完成了工作。这里的想法是我使用 Cookie.js 获取一个 cookie 并将 cookie 的值附加到自定义变量:
<script type="text/javascript">
var _paq = window._paq || [];
_paq.push(["setCustomVariable", 1, "UserName", "value set on page generation", "visit"]);
_paq.push(["setCustomVariable", 2, "RoleTemplate", "value set on page generation", "visit"]);
_paq.push(["setCustomVariable", 3, "ExpandedNavigationSetting", Cookies.get("sidenav-state") ? Cookies.get("sidenav-state") : "NA", "visit"]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function () {
var u = "https://myanalyticsurl.com/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '1']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
我只是 post 这是对我自己的问题的回答,如果有人偶然发现这个问题有同样的问题。
我正在使用 Matomo 在在线仪表板上跟踪用户;这是标准票价,没有任何异常,我只使用了两个自定义变量。这两个自定义变量值可以说是静态的,因为它们是在使用用户用户名及其角色生成页面时填充的。静态的东西,只要他们登录就不会改变。
现在我还想跟踪他们正在执行的一些不涉及页面加载的操作。更准确地说,主导航可以在 slim/collapsed 版本和完全扩展版本之间动态切换。我想跟踪用户是否扩展了菜单。问题是用户可以即时更改它。
我有两种方法来检查用户是否展开了导航:检查元素或 cookie 上的 class。当用户在展开的导航之间切换时,设置会保存到 cookie 中,因此选择会在整个页面加载过程中保持不变。
如何跟踪可以动态更改的内容?我不是经验丰富的 matomo 用户,所以我真的不知道明显的答案。我还注意到了一种叫做自定义维度的东西,也许这能帮到你?
如果有帮助,这里是代码,虽然它是一个非常标准的票价:
<script type="text/javascript">
var _paq = window._paq || [];
_paq.push(["setCustomVariable", 1, "UserName", "value set on page generation", "visit"]);
_paq.push(["setCustomVariable", 2, "RoleTemplate", "value set on page generation", "visit"]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function () {
var u = "https://myanalyticsurl.com/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '1']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>
网站 asp.net 基于 mvc 5。
好吧,无论如何,这就是我想出的,它不是我想要的,但它现在完成了工作。这里的想法是我使用 Cookie.js 获取一个 cookie 并将 cookie 的值附加到自定义变量:
<script type="text/javascript">
var _paq = window._paq || [];
_paq.push(["setCustomVariable", 1, "UserName", "value set on page generation", "visit"]);
_paq.push(["setCustomVariable", 2, "RoleTemplate", "value set on page generation", "visit"]);
_paq.push(["setCustomVariable", 3, "ExpandedNavigationSetting", Cookies.get("sidenav-state") ? Cookies.get("sidenav-state") : "NA", "visit"]);
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function () {
var u = "https://myanalyticsurl.com/";
_paq.push(['setTrackerUrl', u+'matomo.php']);
_paq.push(['setSiteId', '1']);
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
我只是 post 这是对我自己的问题的回答,如果有人偶然发现这个问题有同样的问题。