Markus Baersch
Analytics Pioneers Meetup DUS
Google Tag Manager Templates
Praktisch im Browser, unverzichtbar am Server
Wozu Templates (im Client)?
● Verzicht auf HTML Tags
● Wiederverwendbar = Code Reduktion
● Zentral pflegbar, Updates auf Knopfdruck
● Transparenz & (Sicherheit)
● Robustheit & Zuverlässigkeit
● Gallery!
Wozu Templates (am Server)?
● Alternativlos: Kein JS Code in Tags, keine JS Variablen (for now)
● Für schnelle Nutzung neuer Features unverzichtbar
● Zentral pflegbar, Updates auf Knopfdruck
● Transparenz & (Sicherheit)
● Robustheit & Zuverlässigkeit
● Gallery!
Google Tag Manager Template Gallery
Google Tag Manager Template Gallery
Google Tag Manager Template Gallery
Beispiel: Event Id
Story Time…
Warum Templates einfach besser
sind als Custom JS
A real life example
GA4 Umstellung eines bestehenden
Containers
GA4 Basis war da
Nächster Schritt: E-Commerce
… was erstmal immer gleich aussieht
… und immer gleich gelöst wird
… bis eines Tages (im Mai)...
C
Beispiel: Robustheit
Standard E-Commerce Implementierung in GA4 mit Simos Template und etwas JS. Keine Hexerei…
Wieso ist der “Item Value” undefined?
Beispiel: Robustheit
Alle JS Vars?
Undefined! WTF?
console.log()
Nope
… immer noch undefined. WTF!?!?!1elf?
Lösung: CSP
https://developers.google.com/tag-platform/tag-manager/web/csp
Learning
Template Code ist deutlich robuster!
… und sicherer
… und effizienter
… und so weiter
Überzeugt?
Demo
Internal IP Filter (Server-Side)
Eigenes Template: Ganz einfach ;)
Namen vergeben und loslegen:
> Felder definieren
> Coding
> Permissions
> Tests
> Einsatz
Neues Template anlegen
Feld(er) definieren
Code für Template
Berechtigungen
Be specific ;)
Testen im Editor…
Bereinigen und Speichern…
… und nutzen! ;)
Aber Vorsicht!
Das musst Du noch anpassen ;)
Match bei Teilübereinstimmung = doof
Und das JavaScript Problem von eben?
Eingabefeld für Items / Products
Code faktisch ein Einzeiler
Testbar direkt im Editor anhand
von beliebigen Eingabewerten
Steig ein!
Vorschläge
Starten mit Gallery
Einfache Aufgaben = einfache
Templates
Testing auf Stage o. Ä.
Die Hilfe ist eine Hilfe
JS unverzichtbar! Tipp zum Einstieg:
https://www.freecodecamp.org/learn/j
avascript-algorithms-and-data-
structures/
E-Book
Schwerpunkt ssGTM
markus-baersch.de/gtmbuch
Danke!
Fragen?
…oder Feedback?
…oder gar Bedarf? :)

Google Tag Manager Templates

Hinweis der Redaktion

  • #22 const getRemoteAddress = require('getRemoteAddress'); const ip = getRemoteAddress(); let res = false; data.internalIpList.forEach(e => { let mrk = e.internalMarker, isMatch = ip.match(mrk); require('logToConsole')(ip, mrk, isMatch); if (ip.match(e.internalMarker) != null) { res = true; } }); return res;
  • #26 const ip = require('getRemoteAddress')(); let res = false; data.internalIpList.forEach(e => { if (ip.match(e.internalMarker) != null) { res = true; } }); return res;
  • #27 var items = data.inputArray || []; return items.reduce((prev, item) => { return item.price*100 - (item.discount||0)*100; }, 0) / 100;