Files
bridget/layouts/partials/plugin/analytics.html
Sped0n 7d4bed3ba6 feat: use absolute URLs for assets
closes #473, closes #476

Signed-off-by: Sped0n <hi@sped0n.com>
2025-11-12 00:10:06 +08:00

85 lines
2.9 KiB
HTML

{{- $analytics := site.Params.analytics -}}
{{- if $analytics.enable -}}
{{- /* Google Analytics */ -}}
{{- with $analytics.google.id -}}
<script type="text/javascript">
window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());
gtag('config', '{{- . -}}'{{- if $analytics.google.anonymizeIP -}}, { 'anonymize_ip': true }{{- end -}});
</script> {{- printf "https://www.googletagmanager.com/gtag/js?id=%v" . | dict "Async" true "Source" | partial "plugin/script.html" -}}
{{- end -}}
{{- /* Fathom Analytics */ -}}
{{- with $analytics.fathom.id -}}
<script type="text/javascript">
window.fathom=window.fathom||function(){(fathom.q=fathom.q||[]).push(arguments);};
fathom('set', 'siteId', '{{- . -}}');
fathom('trackPageview');
</script> {{- dict "Source" ($analytics.fathom.server | default "cdn.usefathom.com" | printf "https://%v/tracker.js") "Async" true "Attr" "id=fathom-script" | partial "plugin/script.html" -}}
{{- end -}}
{{- /* Baidu Analytics */ -}}
{{- with $analytics.baidu.id -}}
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?{{- . -}}";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
{{- end -}}
{{- /* Umami Analytics */ -}}
{{- with $analytics.umami.data_website_id -}}
<script
async
defer
data-website-id="{{- . -}}"
src="{{- $analytics.umami.src -}}"
{{- with $analytics.umami.data_host_url -}}data-host-url="{{- . -}}"{{- end -}}
{{- with $analytics.umami.data_domains -}}data-domains="{{- . -}}"{{- end -}}
></script>
{{- end -}}
{{- /* Plausible Analytics */ -}}
{{- with $analytics.plausible.data_domain -}}
<script
async
defer
data-domain="{{- . -}}"
src="{{- $analytics.plausible.src -}}"
></script>
{{- end -}}
{{- /* Cloudflare Analytics */ -}}
{{- with $analytics.cloudflare.token -}}
<script
defer
src="https://static.cloudflareinsights.com/beacon.min.js"
data-cf-beacon='{"token": "{{- $analytics.cloudflare.token -}}"}'
></script>
{{- end -}}
{{- /* Splitbee Analytics */ -}}
{{- if $analytics.splitbee.enable -}}
{{- $attr := "" -}}
{{- if $analytics.splitbee.Do_not_track -}}
{{- $attr = printf `%v data-respect-dnt` $attr -}}
{{- end -}}
{{- if $analytics.splitbee.No_cookie -}}
{{- $attr = printf `%v data-no-cookie` $attr -}}
{{- end -}}
{{- with $analytics.splitbee.data_token -}}
{{- $attr = printf `%v data-token="%v"` $attr . -}}
{{- end -}}
<script
defer
{{- with $attr -}}{{- . | safeHTMLAttr -}}{{- end -}}
src="https://cdn.splitbee.io/sb.js"
></script>
{{- end -}}
{{- end -}}