WordPress
Installieren Sie das Selgeo-Tracking-Snippet auf einer WordPress-Website. Das Snippet muss auf jeder Seite Ihrer Website laufen — Besucher können mit einem ?ref=…-Parameter auf jeder beliebigen URL ankommen, und ein Snippet, das nur auf einem einzelnen Beitrag oder einer Landingpage läuft, verpasst die meisten Klicks.
API-Version: v1
Wenn Sie nicht WordPress verwenden, lesen Sie stattdessen die HTML- / einfache-Script-Anleitung, die Next.js-Anleitung oder die React-(Vite)-Anleitung.
Ein seitenspezifischer Gutenberg-Custom-HTML-Block, der auf einem einzelnen Beitrag oder einer Landingpage abgelegt wird, ist nicht akzeptabel. Der ?ref=-Parameter kann auf jeder URL Ihrer Website landen — Ihrer Startseite, Ihrer Preisseite, einem Blogbeitrag, den ein Partner geteilt hat. Wenn das Snippet nicht website-weit vorhanden ist, gehen diese Klicks stillschweigend verloren. Verwenden Sie einen der drei website-weiten Platzierungswege unten.
Drei website-weite Platzierungswege
| Weg | Am besten für | Bearbeitung |
|---|---|---|
| A. Site Editor (Block-Themes) | Moderne Block-Themes (Twenty Twenty-Three, Twenty Twenty-Four, Twenty Twenty-Five usw.) | Kein Code; nutzt den WordPress-Site-Editor |
B. footer.php (klassische Themes) | Klassische Themes mit footer.php (Astra, GeneratePress, OceanWP ohne FSE, eigene Themes) | Direkte Bearbeitung der Theme-Datei |
| C. Header-Footer-Plugin | Jede WordPress-Seite, auch solche ohne Zugriff auf Theme-Dateien | Kein Code; Plugin-Oberfläche |
Verwenden Sie den Weg, der zu Ihrem Stack passt. Alle drei führen dazu, dass dasselbe Snippet auf jeder Seite läuft.
Weg A — Site Editor (Block-Themes)
Für Block-Themes (Full Site Editing — FSE).
Schritt 1: Site-Editor öffnen
Navigieren Sie im WordPress-Admin zu Design > Editor. Der Site-Editor öffnet sich.
Schritt 2: Footer- (oder Header-)Template-Teil öffnen
Wählen Sie in der linken Navigation Muster > Template-Teile > Footer (oder Header). Der Footer-Template-Teil ist der Standard-Host für Tracking-Snippets, weil er auf jeder Seite geladen wird.

Schritt 3: Custom-HTML-Block einfügen
Klicken Sie am Ende des Footers auf den +-Block-Hinzufügen-Button, suchen Sie nach Custom HTML und fügen Sie den Block ein.
Fügen Sie das Snippet in den Block-Body ein:
<script
async
src="https://cdn.selgeo.com/v1/selgeo.js"
data-merchant="pk_test_YOUR_KEY"
></script>
Ersetzen Sie pk_test_YOUR_KEY durch Ihren öffentlichen API-Schlüssel aus Einstellungen > API-Schlüssel im Selgeo-Dashboard.
Schritt 4: Template-Teil speichern
Klicken Sie oben rechts auf Speichern. WordPress übernimmt die Änderung sofort website-weit.
Beides funktioniert. Der Footer wird bevorzugt, weil er den First Paint nicht blockiert. Eine Header-Platzierung ist in Ordnung, wenn Ihr Footer bedingt ausgeblendet wird (selten).
Weg B — footer.php (klassische Themes)
Für klassische (Nicht-FSE-)Themes.
Eine direkte Bearbeitung der footer.php des Eltern-Themes bedeutet, dass Ihre Änderung beim nächsten Theme-Update überschrieben wird. Verwenden Sie entweder ein Child-Theme oder einen der beiden anderen Wege.
Schritt 1: footer.php Ihres Child-Themes öffnen
Pfad: wp-content/themes/<ihr-child-theme>/footer.php.
Wenn die Datei in Ihrem Child-Theme nicht existiert, kopieren Sie sie zuerst aus dem Eltern-Theme.
Schritt 2: Snippet kurz vor </body> einfügen
<?php
// ... Ihr bestehender Footer-Markup ...
?>
<script
async
src="https://cdn.selgeo.com/v1/selgeo.js"
data-merchant="pk_test_YOUR_KEY"
></script>
<?php wp_footer(); ?>
</body>
</html>
Platzieren Sie das <script>-Tag vor wp_footer(), sodass das Snippet früh genug lädt, um Klicks zu erfassen, aber innerhalb desselben schließenden </body>-Blocks.
Schritt 3: Hochladen und überprüfen
Laden Sie die bearbeitete footer.php auf Ihren Server hoch (per SFTP, dem WordPress-Datei-Editor oder dem Dateimanager Ihres Hosting-Panels) und laden Sie Ihre Website neu.

Weg C — Header-Footer-Plugin
Für Seiten ohne Zugriff auf Theme-Dateien oder Betreiber, die eine Oberfläche bevorzugen.
Die zwei beliebtesten Plugins sind:
- WPCode (früher Insert Headers and Footers) — die kostenlose Stufe deckt diesen Anwendungsfall ab.
- Insert Headers and Footers von WPBeginner — minimalistisches Single-Purpose-Plugin.
Die Anleitung ist im Wesentlichen identisch; dieser Abschnitt verwendet WPCode als Beispiel.
Schritt 1: Plugin installieren und aktivieren
Navigieren Sie im WordPress-Admin zu Plugins > Installieren, suchen Sie nach WPCode, installieren und aktivieren Sie es.
Schritt 2: Header- & Footer-Einstellungen öffnen
Navigieren Sie zu Code Snippets > Header & Footer.
Schritt 3: Snippet im Footer-Bereich einfügen
Fügen Sie im Footer-Textbereich Folgendes ein:
<script
async
src="https://cdn.selgeo.com/v1/selgeo.js"
data-merchant="pk_test_YOUR_KEY"
></script>
Ersetzen Sie pk_test_YOUR_KEY durch Ihren öffentlichen API-Schlüssel.
Schritt 4: Änderungen speichern
Klicken Sie auf Änderungen speichern. Das Plugin injiziert das Snippet beim nächsten Seitenaufruf website-weit.

Installation überprüfen
- Öffnen Sie Ihre Website in einem privaten / Inkognito-Browserfenster.
- Erstellen Sie einen Tracking-Link im Selgeo-Dashboard unter Programme > Tracking-Links.
- Besuchen Sie Ihre Website mit dem Tracking-Link, zum Beispiel:
https://ihre-website.com/?ref=IHR_TEST_REF
- Öffnen Sie die Developer Tools (F12). Suchen Sie im Elements-Tab nach
selgeo.js— es sollte innerhalb von<body>oder kurz vor</body>erscheinen. - Mit temporär hinzugefügtem
data-debugzeigt die Konsole:[selgeo] ref detected IHR_TEST_REF[selgeo] click_id stored xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx - Führen Sie in der Konsole aus:
Dies sollte einen UUID-String zurückgeben.__selgeo.getClickId()
- Öffnen Sie das Selgeo-Dashboard. Der Klick sollte innerhalb weniger Sekunden unter Analytics erscheinen.
Fehlerbehebung
Snippet wird nicht geladen
- Öffnen Sie den gerenderten Seitenquelltext (Rechtsklick > Seitenquelltext anzeigen) und suchen Sie nach
selgeo.js. Das<script>-Tag muss im HTML erscheinen — wenn nicht, hat das Snippet die Seite nicht erreicht. - Für Weg A (Site-Editor): Stellen Sie sicher, dass Sie den Template-Teil gespeichert haben, nicht nur eine einzelne Seite. Das Symbol für Template-Teile im Site-Editor ist ein kleines „Puzzlestück" — das Speichern einer Seite breitet sich nicht aus.
- Für Weg B (
footer.php): Stellen Sie sicher, dass Sie in das **Child-**Theme hochgeladen haben, dass das Child-Theme unter Design > Themes aktiv ist und dass kein Caching-Plugin eine veraltete Kopie ausliefert. Cache nach der Bearbeitung leeren. - Für Weg C (Plugin): Stellen Sie sicher, dass das Plugin unter Plugins aktiv ist (nicht nur installiert) und dass das Snippet in den Footer-Bereich eingefügt wurde, nicht in ein seitenspezifisches benutzerdefiniertes Feld.
- Page-Builder-Plugins (Elementor, Divi, Beaver Builder) entfernen manchmal rohe
<script>-Tags aus ihrem eigenen Editor. Wenn Sie das Snippet über einen Page-Builder-Block platziert haben, wechseln Sie stattdessen zu einem der Wege A / B / C — diese arbeiten auf der WordPress-Template-Ebene und überstehen das Page-Builder-Rendering.
Klick wird nicht verfolgt
- Der Besucher muss mit
?ref=…auf der ersten Seitenansicht ankommen. Nachladevorgänge entfernen den Parameter (das Snippet schreibt die URL beim Erfassen um). - Stellen Sie sicher, dass
data-merchanteinen gültigenpk_test_*- oderpk_live_*-Schlüssel enthält. Ein fehlender Schlüssel führt zu einem stillen No-Op. - Prüfen Sie, ob ein Caching-Plugin (WP Rocket, W3 Total Cache, LiteSpeed)
<script>-Tags umschreibt. Die meisten Caching-Plugins bieten eine Option zum Ausschluss von Skripten aus der „JS-Optimierung" / „Defer / Combine" — schließen Sieselgeo.jsaus diesen Regeln aus. - Stellen Sie sicher, dass das Snippet website-weit läuft, nicht nur auf einer Seite (öffnen Sie die Startseite und eine andere Seite, prüfen Sie den Quelltext, bestätigen Sie das Tag beide Male).
CSP-Blockierung
Wenn Ihr Hosting-Anbieter oder ein Sicherheits-Plugin (z. B. Wordfence, Sucuri) einen Content-Security-Policy-Header injiziert, erlauben Sie die Selgeo-Ursprünge:
script-src 'self' https://cdn.selgeo.com;
connect-src 'self' https://api.selgeo.com;
Bei Staging- / Dev-Workspaces, in denen data-api-url auf einen anderen Ursprung zeigt, fügen Sie diesen Ursprung ebenfalls zu connect-src hinzu.
Nächste Schritte
- Stripe Payment Links — Stripe-Integration ohne Backend; passt besonders gut zu WordPress-Seiten, die zu
buy.stripe.comverlinken. - Conversion API — Nicht-Stripe-Konversionen verfolgen (Formularübermittlungen, Plugin-Webhooks).
- Snippet-Setup — vollständige Attributreferenz und das zugrunde liegende HTML-Script-Tag.