Matomo Tracker 参考
- WeChat Matomo - 微信小程序 Matomo 埋点
- Tracking JavaScript Guide
跨设备精确用户检测: User ID (在 JS 和所有其他客户端中设置) GitHub Issue #3490
FAQ 175: 如何告诉 Matomo 基于 Visitor ID Cookie 追踪唯一访客而不是 IP 地址?
[Tracker]
trust_visitors_cookies = 1
// 示例: 站点搜索追踪
getGlobalThis()?.['_paq']?.push([
'trackSiteSearch',
`${search.policyProvince ?? ''} ${search.keyword}`,
'新冠政策搜索',
result.length,
]);
// 跨域链接
_paq.push(['setDomains', ['*.domain1.com', '*.domain2.com']]);
_paq.push(['enableCrossDomainLinking']);
// 常用 API
_paq.push(['trackEvent', category, action, name, value, { dimension1: 'DimensionValue' }]);
_paq.push(['trackSiteSearch', keyword, category, resultsCount, { dimension1: 'DimensionValue' }]);
_paq.push(['trackLink', url, linkType, { dimension1: 'DimensionValue' }]);
_paq.push(['trackGoal', idGoal, customRevenue, { dimension1: 'DimensionValue' }]);
// 用户登出重置
_paq.push(['resetUserId']);
_paq.push(['appendToTrackingUrl', 'new_visit=1']); // 强制新访问
_paq.push(['trackPageView']);
_paq.push(['appendToTrackingUrl', '']); // 重置,避免影响后续请求
// 内容追踪
_paq.push(['trackContentImpression', 'Content Name', 'Content Piece', 'http://www.example.com']);
div.addEventListener('click', function () {
_paq.push(['trackContentInteraction', 'tabActivated', 'Content Name', 'Content Piece', 'http://www.example.com']);
});
-
表单分析:
-
React 集成: @datapunt/matomo-tracker-react
-
Next.js 路由监听: StackOverflow