Blog
SignalHost für TYPO3: Erweiterung installieren, jede Website verbinden, und serverseitiges Tracking läuft
Veröffentlicht · 7 Min. Lesezeit
Jetzt bei TYPO3 Extension Repository
Die SignalHost-Erweiterung bringt serverseitigen Google Tag Manager auf deine TYPO3-Websites, ohne dass du eine einzige Zeile Code einfügen musst. Sie bindet den Tracking-Loader auf jeder Frontend-Seite einer verbundenen Website ein, hält ihn aktuell, wenn sich auf unserer Seite etwas ändert, und entfernt ihn wieder, wenn du die Verbindung trennst. Jede Website einer Multi-Site-Installation wird einzeln verbunden, und diese Anleitung begleitet eine Website von der Installation bis zum Test.
Bevor du anfängst
- TYPO3 13.4 LTS oder 14.3 LTS mit PHP 8.2 oder neuer und der Erweiterung sodium.
- Ein SignalHost-Konto. Zum Ausprobieren reicht der kostenlose Tarif: 10.000 Anfragen pro Monat und ein Container. Du kannst das Konto auch beim Verbinden anlegen.
- Ein Backend-Konto mit Administratorrechten. Das Modul SignalHost ist nur für Administratoren.
- Eine Website, deren Base in der Site-Konfiguration eine Domain hat, etwa https://www.example.com/.
1. Die Erweiterung installieren
In einer Composer-basierten Installation bindest du sie über Packagist ein:
composer require signalhost/server-side-taggingIm klassischen Modus installierst du sie stattdessen über den Extension Manager; sie steht im TYPO3 Extension Repository unter dem Schlüssel signalhost_server_side_tagging. Einer Website fügt sie nichts hinzu, bis diese Website verbunden ist.
2. Eine Website mit einem Container verbinden
Öffne im TYPO3-Backend Sites › SignalHost (in TYPO3 13 Site Management › SignalHost); dort hat jede Website eine eigene Karte. SignalHost schickt dich nach dem Verbinden zur Adresse der Website zurück. Öffne das Backend deshalb unter der Domain dieser Website. Unter einer anderen Domain hat die Karte eine Schaltfläche, die die Seite dort öffnet; eventuell musst du dich dort einmal anmelden.
Klicke auf der Karte der Website auf „Mit SignalHost verbinden“ oder, wenn du noch kein Konto hast, auf „Kostenloses Konto anlegen“. Bevor du verbindest, wird nichts an SignalHost gesendet. Melde dich auf signalhost.io an. Der nächste Bildschirm zeigt, was die Erweiterung tun kann und was nicht, und fragt, welchen Container die Website verwenden soll. Ein Container ist dein eigener Tagging-Server: ein Web-Container und ein Server-Container in Tag Manager, angelegt in deinem eigenen Google-Konto, damit sie dir gehören.
Wähle einen vorhandenen Container oder klicke auf „Neuer Container für …“ mit der Adresse deiner Website und durchlaufe den kurzen Assistenten. Die Einrichtung eines neuen Containers dauert einige Minuten; du kannst sofort verbinden, und der Code wird eingebunden, sobald er bereit ist. Klicke auf „Verbinden“, und du bist wieder auf der Karte, mit der Meldung „Verbunden“. Der Code von SignalHost ist jetzt auf jeder Seite dieser Website eingebunden. Wiederhole das für jede Website, die du erfassen willst.
3. Prüfen, ob der Code auf deiner Website ist
Die Karte der Website zeigt jetzt „Tracking ist aktiv“ oder, solange ein neuer Container noch eingerichtet wird, „Das Tracking startet, sobald dein Container bereit ist“. Lies dann die Zeile „Auf deiner Startseite“: Direkt nach dem Verbinden ruft die Erweiterung deine Startseite so ab, wie ein Besucher es tun würde, und sucht nach ihrem Code. „Code gefunden“ ist die Antwort, die du sehen willst. „Erneut prüfen“ wiederholt die Prüfung jederzeit, und die anderen Antworten findest du unter „Wenn etwas nicht funktioniert“.
4. Testen
Öffne deine Website in einem privaten Fenster und klicke dich durch ein paar Seiten; ein Besucher, der dein Cookie-Banner ablehnt, wird trotzdem gezählt, als cookieloser Ping von Google. Klicke dann auf „Statistiken & Einstellungen öffnen“, um deine Container-Seite auf signalhost.io zu öffnen.
Unter „Erweiterte Statistik“ zeigt der Tab „Aktuell“ die Seitenaufrufe der letzten 30 Minuten, deine eigenen eingeschlossen. „Prüfung starten“ unter „Fehlersuche“ unten auf der Seite vergleicht, was dein Tagging-Server empfangen hat, mit dem, was Google Analytics für dieselben 30 Minuten meldet. Weniger in Analytics ist normal: Analytics lässt Besucher weg, die Cookies abgelehnt haben. Ab dem Tarif Growth zeigt „Live-Ereignisse“ jedes Ereignis, sobald es eintrifft.
Was die Erweiterung deiner Website hinzufügt
Ein kleines Skript pro verbundener Website und eine stündliche Rückmeldung:
- Den Loader von Google Tag Manager, kurz vor dem Ende des Head-Bereichs jeder Frontend-Seite, ausgerichtet auf die eigene Tagging-Adresse der Website statt auf googletagmanager.com. Er lädt deinen Tag-Manager-Container von dort. Er kommt nach dem Seiten-Cache von TYPO3 in die fertige Seite, daher muss kein Cache geleert werden. Erzwingt die Website die Content Security Policy von TYPO3, ergänzt die Erweiterung dort die Tagging-Adresse und erlaubt den Loader über seinen Hash, außer die Richtlinie erlaubt Inline-Skripte bereits.
- Einmal pro Stunde, nachdem eine Antwort gesendet wurde, meldet sich die Erweiterung bei signalhost.io, um aktuell zu bleiben. Sie sendet nur die Versionen der Erweiterung, von TYPO3 und PHP, die Adresse der Website und ob der Code auf der Startseite gefunden wurde: keine Besucherdaten, keine Inhalte, keine Benutzerkonten. Ist signalhost.io nicht erreichbar, behält die Website die letzte funktionierende Konfiguration.
Jede Anfrage verlässt den Browser in einer Form, die Werbeblocker nicht erkennen, und dein Tagging-Server leitet sie an Google Analytics 4 und an die Werbeplattformen weiter, die du auf der Container-Seite eingerichtet hast: Google Ads, Meta, TikTok und andere. Das Tracking folgt deinem Cookie-Banner über Google Consent Mode. Der Loader steht nach einem Banner im Head-Bereich; ein später geladenes Banner muss die Standardwerte von Consent Mode vor dem Loader setzen.
Die Erweiterung liest keine Formulare und keine Bestellungen. Seitenaufrufe kommen von selbst an; ein Kauf oder ein Lead erreicht deinen Container, wenn deine Website ihn in den dataLayer schreibt.
Deine eigene Tracking-Domain
Dein Container startet mit einer Adresse unter signalhost.io. In einem kostenpflichtigen Tarif verlegt ihn „Eigene Domain einrichten“ auf der Container-Seite mit einem einzigen DNS-Eintrag bei deinem Anbieter auf eine Subdomain deiner eigenen Website, etwa sgtm.deine-website.de. Diese Adresse übersteht Filterlisten und hält Klick-Cookies First-Party. Sobald sie live ist, stellt die Erweiterung diese Website bei ihrer nächsten Rückmeldung um, meist innerhalb einer Stunde, und die Content Security Policy zieht mit. Du musst nichts von Hand ersetzen, und die alte Adresse funktioniert bis dahin weiter.
SignalHost von Hand einbinden
Du kannst den Code auch selbst einfügen. Suche auf der Container-Seite dein Snippet in der Karte „Auf deiner Website einbinden“ und klicke auf „Kopieren“. Füge es in den Head-Bereich jeder Seite ein (in TYPO3 über dein Template oder TypoScript), direkt nach dem Skript deines Cookie-Banners, und klicke auf „Snippet eingefügt“. „Für KI-Agenten kopieren“ übergibt dieselbe Aufgabe an einen Coding-Agenten.
Beim Einfügen von Hand verzichtest du auf das, was die Erweiterung erledigt: Nichts prüft deine Startseite, nichts entfernt den Code, wenn du trennst, auf einer Website, die die Content Security Policy von TYPO3 erzwingt, musst du das Skript und die Tagging-Adresse selbst erlauben, und wenn deine eigene Domain live geht, ersetzt du den Code selbst, aus „Aktualisiere das Snippet auf deiner Website“ in der Karte oder aus der E-Mail, die die Domain ankündigt. Nutze nie beide Wege: Zwei Kopien zählen jeden Besuch doppelt.
Updates, Verwaltung und Trennen
Aktualisiere die Erweiterung so, wie du sie installiert hast: über Composer oder im klassischen Modus über den Extension Manager.
„Trennen“ auf der Karte einer Website fragt einmal nach, entfernt dann den Code von SignalHost sofort von jeder Seite dieser Website und widerruft ihren Zugriff. Andere Websites bleiben verbunden, und dein Container und seine Daten bleiben in deinem SignalHost-Konto.
Auf signalhost.io zeigt die Container-Seite „Von der TYPO3-Erweiterung auf … installiert“ mit deiner Website. Ihre Schaltfläche „Verwalten“ führt zu Einstellungen, Verbundene Websites, wo auch „Trennen“ funktioniert: Die Erweiterung lädt SignalHost ab ihrer nächsten Rückmeldung nicht mehr, meist innerhalb einer Stunde.
Deaktivierst du die Erweiterung im klassischen Modus im Extension Manager, widerruft das den Zugriff aller Websites und entfernt, was sie gespeichert hat. composer remove führt keinen TYPO3-Code aus, trenne deshalb vorher jede Website; sonst bleiben sie unter Einstellungen, Verbundene Websites aufgeführt, und du trennst sie dort.
Wenn etwas nicht funktioniert
- Die Karte zeigt „SignalHost schickt dich nach dem Verbinden zur Adresse der Website zurück“: Du hast das Backend unter einer anderen Domain geöffnet. Öffne die Seite mit der Schaltfläche darunter auf der Domain der Website.
- „Konnte nicht prüfen (dein Server hat eine Anfrage an sich selbst abgelehnt)“: Dein Hoster blockiert Anfragen an die eigene Adresse. Über deine Besucher sagt das nichts aus; suche deine Tagging-Adresse im Quelltext deiner Startseite.
- „Eine ältere Kopie ist auf der Seite“ oder „Der Code ist zweimal auf der Seite“: Eine Kopie wurde von Hand in ein Template, in TypoScript oder eine andere Erweiterung eingefügt. Entferne sie; die Erweiterung bindet die aktuelle ein, und zwei Kopien zählen jeden Besuch doppelt.
- Ein Hinweis, dass deine Website bereits einen Tag-Manager-Container mit dem eigenen Snippet von Google lädt: Entferne dieses Snippet, denn SignalHost lädt den Container jetzt, und beide zusammen zählen jeden Besuch doppelt.
- „Die Adresse dieser Website hat sich seit dem Verbinden geändert“: Auf einer Kopie, etwa einer Staging-Umgebung, wird nichts gesendet. Ist die Live-Website umgezogen, trenne die Verbindung und verbinde neu.
- Alles andere: Schreib an hello@signalhost.io und nenne die Adresse deiner Website.
Marken
SignalHost ist ein unabhängiges Produkt der Algorithmo GmbH. Es steht in keiner Verbindung zur TYPO3 Association, zu Google, Meta oder TikTok und wird von diesen nicht unterstützt. Google Analytics, Google Ads und Google Tag Manager sind Marken der Google LLC; Meta ist eine Marke der Meta Platforms, Inc.; TikTok ist eine Marke der ByteDance Ltd.; TYPO3 ist eine eingetragene Marke der TYPO3 Association.

