provide plugin for matomo
This commit is contained in:
parent
2671d189fb
commit
5a75bf6cb6
2 changed files with 42 additions and 0 deletions
|
|
@ -44,6 +44,10 @@
|
||||||
maxLevel: 4,
|
maxLevel: 4,
|
||||||
subMaxLevel: 2,
|
subMaxLevel: 2,
|
||||||
ga: 'UA-106147152-1',
|
ga: 'UA-106147152-1',
|
||||||
|
matomo: {
|
||||||
|
host: '//matomo.thunderwave.de',
|
||||||
|
id: 6
|
||||||
|
},
|
||||||
name: 'docsify',
|
name: 'docsify',
|
||||||
search: {
|
search: {
|
||||||
noData: {
|
noData: {
|
||||||
|
|
@ -84,6 +88,7 @@
|
||||||
<script src="//unpkg.com/docsify/lib/docsify.min.js"></script>
|
<script src="//unpkg.com/docsify/lib/docsify.min.js"></script>
|
||||||
<script src="//unpkg.com/docsify/lib/plugins/search.min.js"></script>
|
<script src="//unpkg.com/docsify/lib/plugins/search.min.js"></script>
|
||||||
<script src="//unpkg.com/docsify/lib/plugins/ga.min.js"></script>
|
<script src="//unpkg.com/docsify/lib/plugins/ga.min.js"></script>
|
||||||
|
<script src="//unpkg.com/docsify/lib/plugins/matomo.min.js"></script>
|
||||||
<script src="//unpkg.com/prismjs/components/prism-bash.min.js"></script>
|
<script src="//unpkg.com/prismjs/components/prism-bash.min.js"></script>
|
||||||
<script src="//unpkg.com/prismjs/components/prism-markdown.min.js"></script>
|
<script src="//unpkg.com/prismjs/components/prism-markdown.min.js"></script>
|
||||||
<script src="//unpkg.com/prismjs/components/prism-nginx.min.js"></script>
|
<script src="//unpkg.com/prismjs/components/prism-nginx.min.js"></script>
|
||||||
|
|
|
||||||
37
src/plugins/matomo.js
Normal file
37
src/plugins/matomo.js
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
function appendScript(options) {
|
||||||
|
const script = document.createElement('script')
|
||||||
|
script.async = true
|
||||||
|
script.src = options.host + '/matomo.js'
|
||||||
|
document.body.appendChild(script)
|
||||||
|
}
|
||||||
|
|
||||||
|
function init(options) {
|
||||||
|
window._paq = window._paq || []
|
||||||
|
window._paq.push(['trackPageView'])
|
||||||
|
window._paq.push(['enableLinkTracking'])
|
||||||
|
setTimeout(function() {
|
||||||
|
appendScript(options)
|
||||||
|
window._paq.push(['setTrackerUrl', options.host + '/matomo.php'])
|
||||||
|
window._paq.push(['setSiteId', options.id + ''])
|
||||||
|
}, 0)
|
||||||
|
}
|
||||||
|
|
||||||
|
function collect() {
|
||||||
|
if (!window._paq) {
|
||||||
|
init($docsify.matomo)
|
||||||
|
}
|
||||||
|
window._paq.push(['setCustomUrl', window.location.hash.substr(1)])
|
||||||
|
window._paq.push(['setDocumentTitle', document.title])
|
||||||
|
window._paq.push(['trackPageView'])
|
||||||
|
}
|
||||||
|
|
||||||
|
const install = function (hook) {
|
||||||
|
if (!$docsify.matomo) {
|
||||||
|
console.error('[Docsify] matomo is required.')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
hook.beforeEach(collect)
|
||||||
|
}
|
||||||
|
|
||||||
|
$docsify.plugins = [].concat(install, $docsify.plugins)
|
||||||
Loading…
Add table
Add a link
Reference in a new issue