马托莫追踪器( JavaScript)
在前端项目中使用 Matamo 跟踪的独立库
安装
npm install @datapunt/matomo-tracker-js
使用量
在您使用这台Matomo Tracker之前, 您需要初始化 Matomo, 您的项目具体细节 .
初始化 :
import MatomoTracker from '@datapunt/matomo-tracker-js'
const tracker = new MatomoTracker({
urlBase: 'https://LINK.TO.DOMAIN',
siteId: 3,
userId: 'UID76903202', // optional, default value: `undefined`.
trackerUrl: 'https://LINK.TO.DOMAIN/tracking.php', // optional, default value: `${urlBase}matomo.php`
srcUrl: 'https://LINK.TO.DOMAIN/tracking.js', // optional, default value: `${urlBase}matomo.js`
disabled: false, // optional, false by default. Makes all tracking calls no-ops if set to true.
heartBeat: { // optional, enabled by default
active: true, // optional, default value: true
seconds: 10 // optional, default value: `15
},
linkTracking: false, // optional, default value: true
configurations: { // optional, default value: {}
// any valid matomo configuration, all below are optional
disableCookies: true,
setSecureCookie: true,
setRequestMethod: 'POST'
}
})
初始化后, 您可以使用 Matomo 跟踪器来跟踪类似事件和页面视图 :
import MatomoTracker from '@datapunt/matomo-tracker-js'
const tracker = new MatomoTracker({
/* setup */
})
tracker.trackPageView()
tracker.trackEvent({
category: 'sample-page',
action: 'click-event',
name: 'test', // optional
value: 123, // optional, numerical value
})
tracker.trackLink({
href: 'https://link-to-other-website.org',
})
高级用途
默认情况下,Matomo Tracker会发送窗口的文档标题和位置,但您可以发送自己的值. 还有.., 自定义维度 可用于:
import MatomoTracker from '@datapunt/matomo-tracker-js'
const tracker = new MatomoTracker({
/* setup */
})
tracker.trackPageView({
documentTitle: 'Page title', // optional
href: 'https://LINK.TO.PAGE', // optional
customDimensions: [
{
id: 1,
value: 'loggedIn',
},
], // optional
})
tracker.trackEvent({
category: 'sample-page',
action: 'click-event',
name: 'test', // optional
value: 123, // optional, numerical value
documentTitle: 'Page title', // optional
href: 'https://LINK.TO.PAGE', // optional
customDimensions: [
{
id: 1,
value: 'loggedIn',
},
], // optional
})
tracker.trackLink({
href: 'https://link-to-your-file.pdf',
linkType: 'download', // optional, default value 'link'
})
除了追踪事件之外,该项目还支持追踪现场搜索:
import MatomoTracker from '@datapunt/matomo-tracker-js'
const tracker = new MatomoTracker({
/* setup */
})
tracker.trackSiteSearch({
keyword: 'test',
category: 'blog', // optional
count: 4, // optional
documentTitle: 'Page title', // optional
href: 'https://LINK.TO.PAGE', // optional
customDimensions: [
{
id: 1,
value: 'loggedIn',
},
], // optional
})
或者如果您想要远离内置的 JavaScript 事件, 此工程可用于从带有数据属性的按钮跟踪事件 :
HTML5 数据属性
<button
data-matomo-event="click"
data-matomo-category="sample-page"
data-matomo-action="click-event"
data-matomo-name="test" // optional
data-matomo-value="123" // optional, numerical value
type="button">
Track me!
</button>
import MatomoTracker from '@datapunt/matomo-tracker-js'
const tracker = new MatomoTracker({
/* setup */
})
// Load the event listeners
tracker.trackEvents()
// Track page views
tracker.trackPageView()