Blog
SignalHost für WordPress: serverseitiger Google Tag Manager und WooCommerce-Ereignisse aus einem Plugin
Veröffentlicht · 7 Min. Lesezeit
Das SignalHost-Plugin bringt serverseitigen Google Tag Manager ohne eingefügten Code auf eine WordPress-Website. Es bindet das Tracking auf jeder Seite ein, sendet WooCommerce-, Formular- und Registrierungs-Ereignisse in der Form, die dein Container erwartet, stellt von selbst um, sobald deine eigene Tracking-Domain live ist, und warnt dich vor allem, was doppelt zählen würde. Diese Anleitung folgt der Reihenfolge, in der du ihm begegnest: installieren, verbinden, prüfen und beheben, was nicht funktioniert.
Bevor du anfängst
- WordPress 6.6 oder neuer mit PHP 7.4 oder neuer und ein Administratorkonto.
- Eine Website-Adresse, die mit https:// beginnt; das Verbinden setzt sie voraus. Andere Websites können das Plugin trotzdem mit einem eingefügten Snippet nutzen, wie weiter unten beschrieben.
- 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.
- WooCommerce, wenn du Shop-Ereignisse möchtest. Formular- und Registrierungs-Ereignisse funktionieren auch ohne.
1. Das Plugin installieren
Gehe in WordPress zu Plugins → Add New, suche nach SignalHost, installiere und aktiviere dann „SignalHost – Server-Side Tag Hosting for Google Tag Manager“. Das Plugin fügt deinem Admin-Menü einen Eintrag SignalHost hinzu und kontaktiert keinen externen Dienst, bis du die Website verbindest.
2. Die Website mit einem Container verbinden
Öffne SignalHost im Menü und klicke auf „Connect with SignalHost“ oder, wenn du neu bist, auf „Create a free account“. Dein Browser wechselt zu signalhost.io und kehrt zurück, wenn du fertig bist.
Dort zeigt „Website verbinden“, was das Plugin tun kann – deinen Tracking-Code auf jeder Seite einbinden, ihn aktuell halten und den Status des Containers lesen – und was nicht: dein Google-Konto, deine Tokens für Werbeplattformen oder deine Abrechnung verwenden. Danach wirst du gefragt, 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 aus und klicke auf „Verbinden“. Oder wähle „Neuer Container für …“ mit der Adresse deiner Website und klicke auf „Container anlegen“, um den kurzen Assistenten zu öffnen. Er bietet an, die Website schon vor dem Ende der Einrichtung zu verbinden; das Plugin bindet den Code ein, sobald der Container bereit ist. Zurück in WordPress zeigt ein Hinweis, dass die Website verbunden ist.
3. Prüfen, ob es funktioniert
Der Tab „Status“ ist eine Checkliste, die von oben nach unten grün wird: „Connected to SignalHost“, „Tracking code on your site“, „SignalHost served the code to a visitor“ und „Data arriving“. Für den zweiten Schritt ruft das Plugin deine Startseite so ab, wie ein abgemeldeter Besucher sie sehen würde; „Check again“ wiederholt diese Prüfung.
Öffne deine Website in einem Browser, lege ein Produkt in den Warenkorb und sende ein Formular ab. Der dritte Schritt wird innerhalb einer Minute nach dem ersten Besuch grün, und „Data arriving“ zählt danach die Seitenaufrufe der letzten 7 Tage. „Log events in the browser console“ unter „Advanced“ zeigt jedes Ereignis in dem Moment, in dem es die Seite verlässt. Ab dem Tarif Growth listet die Container-Seite auf signalhost.io die Ereignisse außerdem unter „Live-Ereignisse“ auf.
Was das Plugin deiner Website hinzufügt
Den Loader von Google Tag Manager im Head-Bereich jeder Seite. Er zeigt auf deine eigene Tagging-Adresse statt auf googletagmanager.com, steht nach deinem Cookie-Banner und ist von den Funktionen „JavaScript verzögern“ gängiger Performance-Plugins ausgenommen. Zusätzlich zu den Seitenaufrufen, die dein Container sendet, überträgt das Plugin diese Ereignisse, jedes mit einer eigenen event_id, damit Meta, TikTok und andere Plattformen ein Ereignis des Browser-Pixels und seinen Zwilling vom Server nur einmal zählen:
- WooCommerce: view_item_list, view_item, add_to_cart, remove_from_cart, view_cart, begin_checkout, add_shipping_info, add_payment_info und purchase, mit dem klassischen und dem blockbasierten Warenkorb und Checkout. Jede Bestellung wird nur einmal gesendet und an der Bestellung selbst markiert, egal wie oft die Danke-Seite geöffnet wird.
- Formulare: erfolgreiche Übermittlungen aus Contact Form 7, WPForms, Gravity Forms, Elementor-Pro-Formularen und Fluent Forms, als Lead (generate_lead), Kontakt (contact), Buchung (schedule), Bewerbung (submit_application) oder Abonnement (subscribe), für jedes Formular wählbar.
- Registrierungen: sign_up, wenn ein Besucher ein Konto anlegt, auf der Registrierungsseite, unter „Mein Konto“ oder im Checkout.
Jede Art lässt sich unter „What is tracked“ ein- und ausschalten. Warenkorb-, Checkout-, Formular- und Registrierungs-Ereignisse kommen aus der Sitzung des Besuchers selbst, nie aus dem HTML der Seite. Ein Seiten-Cache kann deshalb nicht das Ereignis eines Besuchers an den nächsten weitergeben.
„Send customer details for better ad matching“ bleibt ausgeschaltet, bis du es einschaltest. Danach gehen E-Mail, Telefonnummer und Adresse nur dann mit Conversions mit, wenn der Besucher Werbe-Cookies erlaubt hat, und sie werden gehasht, bevor sie die Werbeplattformen erreichen. Die Einwilligung folgt deinem Cookie-Banner über Google Consent Mode. Setzt dein Banner sie nicht, wähle hier unter „Consent & privacy“ die Option Set “denied until consent”.
Wenn du schon GTM4WP oder ein anderes Google-Tag verwendest
Das Plugin liest deine Startseite, prüft deine anderen Plugins und listet unter „Double-counting check“ alles auf, was doppelt zählen würde: ein früher eingefügtes SignalHost-Snippet, Googles eigenes Tag-Manager-Snippet oder ein Google-Tag für dieselbe Property, Site Kit, MonsterInsights, ExactMetrics oder Google Analytics for WooCommerce.
Für GTM4WP gibt es Korrekturen mit einem Klick. „Turn off GTM4WP’s container code“ verhindert, dass GTM4WP denselben Container direkt von Google lädt, während sein dataLayer weiter funktioniert; „Turn off GTM4WP’s shop tracking“ überlässt die Shop-Ereignisse SignalHost. „Undo“ macht beides rückgängig.
Deine eigene Tracking-Domain
Dein Container startet mit einer Adresse unter signalhost.io. In einem kostenpflichtigen Tarif führt dich „Eigene Domain einrichten“ auf der Container-Seite mit einem einzigen DNS-Eintrag zu einer Subdomain deiner eigenen Website, etwa metrics.deine-website.de. Browser behandeln sie als First-Party, ihre Cookies zählen also als deine eigenen, und Anzeigenklicks bleiben zugeordnet. Sobald sie live ist, stellt das Plugin deine Website bei seinem nächsten Abgleich mit SignalHost um, meist innerhalb einer Stunde, und leert deine Seiten-Caches. Du musst nichts von Hand ersetzen.
SignalHost von Hand einbinden
Du kannst SignalHost auf WordPress auch ohne das Plugin betreiben. Öffne auf signalhost.io deinen Container, suche das Snippet in der Karte „Auf deiner Website einbinden“ und klicke auf „Kopieren“. Füge es in den Head-Bereich jeder Seite ein, so weit oben wie möglich, aber nach dem Skript deines Cookie-Banners: Ein Header-Plugin wie WPCode (dort das Feld Header) eignet sich dafür, ebenso die header.php deines Themes. Lädt die Website bereits Google Tag Manager oder ein Google-Tag für dieselbe Analytics-Property, ersetze dieses Snippet, statt ein zweites hinzuzufügen. Klicke dann auf „Snippet eingefügt“.
Damit läuft dein Tag-Manager-Container auf jeder Seite, mit Seitenaufrufen und allem, was deine Website selbst in den dataLayer schreibt. Es fehlt aber alles, was das Plugin hinzufügt: die WooCommerce-, Formular- und Registrierungs-Ereignisse, der Kauf, der nur einmal pro Bestellung gemeldet wird, und beide Prüfungen. Wenn deine eigene Domain live geht, ersetzt du das Snippet selbst.
Für eine Website, die sich nicht verbinden kann, etwa eine ohne https://, gibt es einen Mittelweg: Wähle im Plugin „I already have a snippet from SignalHost“, füge den Code ein und klicke auf „Use this snippet“. Die Ereignisse fließen weiterhin, aber das Plugin kann nicht auf deine eigene Domain umstellen und nicht anzeigen, ob Daten ankommen.
Verwalten und trennen
„Disconnect“ im Tab „Status“ fragt einmal nach und entfernt den Tracking-Code dann sofort von jeder Seite. Dein Container und seine Daten bleiben erhalten, und mit „Connect with SignalHost“ verbindest du die Website jederzeit wieder. Auf signalhost.io steht die Website auch unter Einstellungen › Verbundene Websites; „Trennen“ entfernt den Code dort beim nächsten Abgleich des Plugins, meist innerhalb einer Stunde.
Wenn du das Plugin löschst, wird die Website getrennt und alles entfernt, was das Plugin gespeichert hat. Auf einer Staging-Kopie bemerkt das Plugin die geänderte Adresse und pausiert das Tracking, damit Testtraffic nicht in deine Live-Daten gelangt.
Wenn etwas nicht funktioniert
- Es gibt keine Schaltfläche zum Verbinden: Die Adresse der Website beginnt nicht mit https://. Verwende stattdessen „I already have a snippet from SignalHost“.
- Das Verbinden bricht mit einer Meldung über eine Firewall ab: Ein Sicherheits-Plugin oder der Server blockiert Anfragen an signalhost.io. Erlaube sie und verbinde die Website erneut.
- Der Code wurde auf deiner Startseite nicht gefunden: Ein Theme ohne wp_head(), ein Seiten-Cache oder ein Optimierungs-Plugin entfernt ihn. Klicke unter „Advanced“ auf „Clear page caches“ und danach auf „Check again“.
- Der Code steht zweimal auf deiner Startseite, oder dort liegt eine ältere Kopie: Entferne das Snippet, das du früher in dein Theme oder ein Header-Plugin eingefügt hast.
- Die Startseite konnte von diesem Server aus nicht geöffnet werden: Passwortschutz, Wartungsmodus oder eine Firewall steht im Weg. Öffne die Website in einem Browser, um sie dort zu prüfen.
- Deine eigenen Besuche fehlen: „Do not track administrators“ ist eingeschaltet. Besuche die Website abgemeldet.
- 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 WordPress Foundation, zu WooCommerce, 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.; WordPress ist eine Marke der WordPress Foundation. WooCommerce und die anderen hier genannten Plugin-Namen sind Marken ihrer jeweiligen Inhaber.

