diff options
author | Ralf Geschke <ralf@kuerbis.org> | 2018-11-12 21:49:15 +0300 |
---|---|---|
committer | Ralf Geschke <ralf@kuerbis.org> | 2018-11-12 21:49:15 +0300 |
commit | 216757bbd0a45555f4f296bd21d4ce2be7238299 (patch) | |
tree | 6287929f9e1ca555848711acf38fcdc4328f3a64 | |
parent | 05038373f353895e0ecbd40f189d70c3cfd16544 (diff) |
Add support of web analytics: Google Analytics with internal template, Matomo and Yandex Metrica
-rw-r--r-- | layouts/_default/baseof.html | 12 | ||||
-rw-r--r-- | layouts/partials/analytics/matomo.html | 16 | ||||
-rw-r--r-- | layouts/partials/analytics/yandexmetrica.html | 29 |
3 files changed, 55 insertions, 2 deletions
diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index e059869..425d2ff 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -3,7 +3,7 @@ {{- partial "head.html" . -}} <body> - {{ if .Site.Params.Navbar.FixedTop }} + {{ if .Site.Params.Navbar.fixedTop }} {{- partial "header_fixed_top.html" . -}} {{ else }} {{- partial "header_default.html" . -}} @@ -26,8 +26,16 @@ {{ end }} <div id="media-width-detection-element"></div> -</body> + {{- if .Site.Params.Analytics.Matomo.Enabled -}} +{{ partial "analytics/matomo.html" . }} +{{- end -}} +{{ template "_internal/google_analytics_async.html" . }} +{{- if .Site.Params.Analytics.Yandexmetrica.Enabled -}} +{{ partial "analytics/yandexmetrica.html" . }} + +{{- end -}} {{- partial "bottom.html" . -}} +</body> </html>
\ No newline at end of file diff --git a/layouts/partials/analytics/matomo.html b/layouts/partials/analytics/matomo.html new file mode 100644 index 0000000..bb80619 --- /dev/null +++ b/layouts/partials/analytics/matomo.html @@ -0,0 +1,16 @@ +<!-- Matomo --> +<script type="text/javascript"> + var _paq = _paq || []; + /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ + _paq.push(['trackPageView']); + _paq.push(['enableLinkTracking']); + (function() { + var u="//{{ replace (replace .Site.Params.Analytics.Matomo.Url "https://" "") "http://" "" }}/"; + _paq.push(['setTrackerUrl', u+'piwik.php']); + _paq.push(['setSiteId', '{{ .Site.Params.Analytics.Matomo.SiteId }}']); + 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+'piwik.js'; s.parentNode.insertBefore(g,s); + })(); +</script> +<noscript><p><img src="//{{ replace (replace .Site.Params.Analytics.Matomo.Url "https://" "") "http://" "" }}/piwik.php?idsite={{ .Site.Params.Analytics.Matomo.SiteId }}&rec=1" style="border:0;" alt="" /></p></noscript> +<!-- End Matomo Code --> diff --git a/layouts/partials/analytics/yandexmetrica.html b/layouts/partials/analytics/yandexmetrica.html new file mode 100644 index 0000000..3e174b3 --- /dev/null +++ b/layouts/partials/analytics/yandexmetrica.html @@ -0,0 +1,29 @@ +<!-- Yandex.Metrika counter --> +<script type="text/javascript" > + (function (d, w, c) { + (w[c] = w[c] || []).push(function() { + try { + w.yaCounter{{ .Site.Params.Analytics.Yandexmetrica.TagNumber }} = new Ya.Metrika2({ + id:{{ int .Site.Params.Analytics.Yandexmetrica.TagNumber }}, + clickmap:true, + trackLinks:true, + accurateTrackBounce:true, + webvisor:true + }); + } catch(e) { } + }); + + var n = d.getElementsByTagName("script")[0], + s = d.createElement("script"), + f = function () { n.parentNode.insertBefore(s, n); }; + s.type = "text/javascript"; + s.async = true; + s.src = "https://mc.yandex.ru/metrika/tag.js"; + + if (w.opera == "[object Opera]") { + d.addEventListener("DOMContentLoaded", f, false); + } else { f(); } + })(document, window, "yandex_metrika_callbacks2"); +</script> +<noscript><div><img src="https://mc.yandex.ru/watch/{{ .Site.Params.Analytics.Yandexmetrica.TagNumber }}" style="position:absolute; left:-9999px;" alt="" /></div></noscript> +<!-- /Yandex.Metrika counter -->
\ No newline at end of file |