From 628b3c2249db280ecb60ec0f8fd8053f88a265e4 Mon Sep 17 00:00:00 2001 From: Serghei Iakovlev Date: Fri, 27 Sep 2024 20:23:26 +0200 Subject: Add Google Tag Manager support (#178) --- layouts/partials/head/analytics.html | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 layouts/partials/head/analytics.html (limited to 'layouts/partials/head') diff --git a/layouts/partials/head/analytics.html b/layouts/partials/head/analytics.html new file mode 100644 index 0000000..74d045d --- /dev/null +++ b/layouts/partials/head/analytics.html @@ -0,0 +1,22 @@ +{{- if eq hugo.Environment "production" }} + {{- if not site.Params.Privacy.GoogleTagManager.Disable }}{{/* First check GTM */}} + {{- with site.Params.Services.GoogleTagManager }} + {{- $gtmParams := dict "gtmCode" (.ID) -}} + {{- $gtmParams = merge $gtmParams (dict "respectDoNotTrack" site.Params.Privacy.GoogleTagManager.RespectDoNotTrack | default true) }} + + {{- $gtmScript := slice -}} + {{- $gtmScript = $gtmScript | append (resources.Get "js/gtm.js") -}} + {{- $gtmScript = $gtmScript | resources.Concat "js/analytics.js" -}} + {{- $gtmScript = $gtmScript | js.Build (dict "format" "iife" "target" "es2015" "minify" true "params" $gtmParams) -}} + + {{- if site.Params.assets.disable_fingerprinting }} + + {{- else -}} + {{- $gtmScript = $gtmScript | fingerprint -}} + + {{- end -}} + {{- end -}} + {{ else }}{{/* If GTM is disabled delegate the rest to Hugo */}} + {{ template "_internal/google_analytics.html" . }} + {{ end }} +{{ end }} -- cgit v1.2.3