Dokumentation
Wie aktiviere ich das Plugin?
Nach dem Kauf von Referral Source Tracking für Gravity Forms installieren Sie es auf Ihrer WordPress-Website.
Schritt 1: Installation
Melden Sie sich bei Ihrer WordPress-Website an und navigieren Sie zu Plugins → Plugin hinzufügen → Plugin hochladen → Installieren Sie die Zip-Datei und aktivieren Sie sie.
Schritt 2: Plugin registrieren
Gehen Sie in der linken Navigation zu Formulare → Einstellungen → Empfehlungs-Tracking.
Geben Sie Ihren Lizenzschlüssel ein und aktivieren Sie ihn.
Schritt 3: Funktion aktivieren
Nach der Aktivierung Ihrer Lizenz erscheint die Registerkarte „Allgemein“. Klicken Sie darauf und setzen Sie das Häkchen. Standardmäßig aktivieren (“Aktivieren Sie die Nachverfolgung der Verweisquelle standardmäßig für alle Formulare”), klicken Sie dann auf Änderungen speichern.
Wenn Sie dieses Kästchen nicht markieren, bleibt die Protokollierung überall deaktiviert. Sie können sie stattdessen für jedes Formular einzeln unter Formulareinstellungen → Formularoptionen aktivieren.
Das war's! Wenn "Standardmäßig aktivieren" eingeschaltet ist, ist die Nachverfolgung der Verweisquelle sowohl für alle bestehenden Formulare als auch für alle neu erstellten Formulare aktiv.
Funktionsdetails
Es erkennt Quellen
Wir erfassen die Referrer-URL, sofern verfügbar, und speichern sie im Eintrag. Für gängige Plattformen fügen wir außerdem eine benutzerfreundliche Bezeichnung hinzu, damit der Quelltext leicht lesbar ist.
Eine Quelle wird nur dann als „Anzeigen“ gekennzeichnet, wenn der Besuch die eigene Klick-ID der Plattform (gclid, msclkid, li_fat_id, ttclid, oppref usw.) enthält. Eine bekannte Plattform ohne diese ID wird als „Organisch“ gekennzeichnet. Facebook und Instagram bilden eine Ausnahme: Da die Metadaten jedem Klick die fbclid-ID hinzufügen, werden diese als „Anzeigen“ angezeigt, sobald die fbclid-ID zusammen mit einem UTM-Parameter eintrifft.
Hier ist die Liste der Quellen, die bei Erkennung gekennzeichnet werden:
- Google: Google Ads, organische Google-Suche. Gemini-Traffic-Tags
utm_source=geminiist als Google Organic gekennzeichnet; es gibt kein separates Gemini-Label. - Microsoft/Bing: Bing Ads, Bing Organic
- Facebook: Facebook-Anzeigen, organisches Facebook-Suchverhalten
- Instagram: Instagram-Anzeigen, Instagram-Organische Inhalte
- LinkedIn: LinkedIn-Anzeigen, LinkedIn-Organische Inhalte
- X (Twitter): X Bio
- Reddit: Reddit-Anzeigen, Reddit Organic
- TikTok: TikTok-Anzeigen, TikTok-Organik
- Pinterest: Pinterest-Anzeigen, Pinterest Organic
- Snapchat: Snapchat-Anzeigen, Snapchat-Organik
- YouTube: Organische YouTube-Inhalte. Ein Klick auf eine YouTube-Anzeige, der …
gclidwird als Google Ads erfasst, es sei denn, die URL ist zusätzlich mit einem Tag versehen.utm_source=youtube, das YouTube-Anzeigen aufzeichnet. - Andere Suchmaschinen: Yahoo, DuckDuckGo, Yandex
- KI-Assistenten/LLMs: ChatGPT Ads, ChatGPT Organic, Perplexity, Copilot, Claude, Grok, DeepSeek
- E-Mail-Plattformen (Kampagnen-Tracking): Mailchimp, Constant Contact, Pardot (mit der Bezeichnung
SalesforceHubSpot - Direkt und Unbekannt werden gegebenenfalls verwendet.
- Brauch Unter „Benutzerdefinierte Quellen“ können Quellen für Partner-, Affiliate- und Kampagnen-Traffic definiert werden.
UTM-Parameter, die es erfasst
utm_sourceutm_mediumutm_campaignutm_termutm_contentutm_id
Erfasste Klick-IDs
Wir erfassen jede unten stehende Klick-ID im Feld „Klick-ID“ und ordnen den Besuch jeweils der entsprechenden Plattform zu, sofern in der Zeile nichts anderes angegeben ist.
| Plattform | Erfasste Klick-IDs |
|---|---|
| Google Ads | gclid, gbraid, wbraid |
| Google (andere) | campaignid, gad_campaignid, gad_sourceDie Daten werden zwar erfasst und Google zugeordnet, kennzeichnen den Besuch aber nicht automatisch als Anzeige. Bei einem Klick auf eine echte Google-Anzeige erscheinen sie zusammen mit den Anzeigen. gclid, was der Fall ist. |
| Microsoft Ads (Bing) | msclkid |
| Meta (Facebook / Instagram) | fbclid |
| LinkedIn-Anzeigen | li_fat_id |
| Reddit-Anzeigen | rdt_cid, rd_ad |
| TikTok-Werbung | ttclid |
| Pinterest-Anzeigen | pin_cid |
| Snapchat-Anzeigen | snap_cid |
| ChatGPT-Anzeigen | oppref |
| Mailchimp | mc_cid, mc_eid |
| Constant Contact | cc_cid, cc_eid, cc_campaignid |
| Salesforce Pardot | pi_cid, pi_eid, pi_uid, pi_oid, pi_opt_in |
| HubSpot | _hsenc, _hssc, _hsmi, _hstc, _hsml |
| DoubleClick / DV360 | dclidDie Klick-ID wird zwar erfasst, ist aber keiner DoubleClick-Quellenbezeichnung zugeordnet. Der Besuch wird als „Unbekannte Anzeigen“ angezeigt, sofern er nicht anderweitig identifiziert wird. |
Benutzerdefinierte Quellen
Die integrierte Quellenerkennung deckt bereits die wichtigsten Suchmaschinen, sozialen Plattformen, KI-Assistenten und E-Mail-Marketing-Tools ab. Mit benutzerdefinierten Quellen können Sie zusätzlich eigene Regeln mit Labels hinzufügen. Nutzen Sie diese für Partnerseiten, Affiliate-Empfehlungen, benannte Kampagnen, Marken-Linkverkürzer, Mitarbeiterlinks und alles andere, wo das Standardlabel “Empfehlung” oder ein Rohdaten-Label verwendet wird. utm_source Der Wert ist nicht spezifisch genug.

Sie finden sie unter Formulare → Einstellungen → Empfehlungsverfolgung im Benutzerdefinierte Quellen Abschnitt. Jede Zeile entspricht einer Regel.
Wie eine Regel ausgewertet wird
Bei jedem Besuch überprüft das Plugin Ihre benutzerdefinierten Quellen. vor Integrierte Erkennung. Die erste zutreffende Regel gewinnt: Das Plugin setzt die Besucherquelle auf diejenige, die dieser Regel entspricht. Etikett Die integrierte Erkennung wird für diesen Besuch übersprungen. Falls keine Übereinstimmung gefunden wird, läuft die integrierte Erkennung wie gewohnt (Google, Facebook, Direct usw.).
Die Felder, eines nach dem anderen
- Etikett – Der als Quelle des Besuchs gespeicherte Text (z. B.
Partner: Acme,Email: Newsletter,Campaign: Spring SaleGenau das erscheint im Eintrag, in der{pb_ref_source}Fügen Sie im Register „Berichte“ und in jeder CRM-Zuordnung ein Platzhalterfeld ein. Wählen Sie ein Feld, das Sie auf einer stark frequentierten Eingabemaske leicht wiedererkennen. - Spielfeld – Wo man suchen muss:
- Referrer Host – die Domain im Referrer des Browsers (z. B. Übereinstimmungen)
acme.comwenn jemand ankommthttps://www.acme.com/blog/post). - UTM-Quelle / Medium / Kampagne / Begriff / Inhalt – die entsprechenden
?utm_*=Parameter in der Landingpage-URL.
- Referrer Host – die Domain im Referrer des Browsers (z. B. Übereinstimmungen)
- Übereinstimmungstyp – Worauf Sie achten sollten:
- Enthält – Der Feldwert enthält Ihren Übereinstimmungswert an beliebiger Stelle. Groß-/Kleinschreibung wird nicht beachtet. Gut geeignet, um Varianten wie … zu erfassen.
acme.com,blog.acme.com,partner.acme.commit einer Regel. - Gleich – Der Feldwert entspricht exakt Ihrem Übereinstimmungswert (Groß-/Kleinschreibung wird nicht beachtet). Strenger, verwenden Sie diese Option daher nur, wenn Sie eine präzise Übereinstimmung benötigen, z. B.
utm_sourcegenau gleichnewsletter.
- Enthält – Der Feldwert enthält Ihren Übereinstimmungswert an beliebiger Stelle. Groß-/Kleinschreibung wird nicht beachtet. Gut geeignet, um Varianten wie … zu erfassen.
- Übereinstimmungswert – Der zu suchende Text. Keine Anführungszeichen, keine Sternchen, nur die wörtliche Zeichenkette.
- Priorität – Eine Nummer, die die Reihenfolge steuert. Höhere Läufe zuerst, Bei Regelüberschneidungen hat die Regel mit der höheren Priorität Vorrang. Standardmäßig gilt:
10; Stoß auf20oder50Für Regeln, die Ihre Standardeinstellungen überschreiben müssen, gehen Sie zu5für alle Fälle.
Durchgerechnete Beispiele
Kennzeichne eine Partnerseite anhand des Referrers
| Etikett | Spielfeld | Übereinstimmungstyp | Übereinstimmungswert | Priorität |
|---|---|---|---|---|
Partner: Acme | Referrer Host | Enthält | acme.com | 20 |
Jeder, der von einer beliebigen Subdomain kommt acme.com ist gekennzeichnet Partner: Acme anstelle des generischen Referral.
Kennzeichnen Sie eine Newsletter-Kampagne mit einem Tag.
| Etikett | Spielfeld | Übereinstimmungstyp | Übereinstimmungswert | Priorität |
|---|---|---|---|---|
Email: Newsletter | UTM-Quelle | Gleich | newsletter | 20 |
Verwenden Sie diese Option, wenn Sie die URL selbst verwalten (z. B. Links in Ihrem wöchentlichen E-Mail-Versand). ?utm_source=newsletter).
Kennzeichnen Sie eine bezahlte Kampagne mit ihrem UTM-Kampagnennamen
| Etikett | Spielfeld | Übereinstimmungstyp | Übereinstimmungswert | Priorität |
|---|---|---|---|---|
Campaign: Spring Sale | UTM-Kampagne | Enthält | spring-sale | 15 |
Fänge ?utm_campaign=spring-sale-2026, ?utm_campaign=spring-sale-google-ads, und ähnliche Varianten in einer Regel.
Die integrierte Google-Erkennung für einen bestimmten Affiliate-Partner überschreiben
| Etikett | Spielfeld | Übereinstimmungstyp | Übereinstimmungswert | Priorität |
|---|---|---|---|---|
Affiliate: Acme via Google Ads | UTM-Quelle | Gleich | acme-gads | 50 |
Eine hohe Priorität stellt sicher, dass diese Regel Vorrang vor der integrierten Regel hat. utm_source=google → Google Ads Kennzeichnung immer dann, wenn die markierte Quelle eingeht.
“Bio-/Anzeigen-Labels hinzufügen” mit benutzerdefinierten Quellen
Eingebaute Quellen werden immer angezeigt als Google Ads, Facebook Organic, usw. Bio-/Anzeigen-Labels hinzufügen (Benutzerdefinierte Quellen) Über das Kontrollkästchen (ebenfalls unter Formulare → Einstellungen → Empfehlungs-Tracking) wird gesteuert, ob Ihre benutzerdefinierten Bezeichnungen das gleiche Suffix erhalten.
- Geprüft (Standard) – eine benutzerdefinierte Regel mit der Bezeichnung
Partner: AcmewirdPartner: Acme Organicauf Empfehlungsverkehr undPartner: Acme Adswenn der Besuch eine bezahlte Klick-ID wie z. B. gclid enthält. - Ungeprüft – Ihre benutzerdefinierten Bezeichnungen werden genau so angezeigt, wie Sie sie eingegeben haben, und das Plugin fügt kein Suffix hinzu.
Wählen Sie die Option, die am besten zu Ihren Berichten passt. Die meisten Teams benötigen das Suffix, um bezahlten und organischen Partner-Traffic vergleichen zu können. Wenn Sie jedoch das Label selbst verwenden, um die vollständige Identität zu transportieren, deaktivieren Sie es.
Regeln programmatisch hinzufügen
Wenn Sie ein Add-on entwickeln oder Regeln unter Versionskontrolle stellen möchten, pb_gforms_referral_tracking_custom_sources Der Filter akzeptiert dieselbe Struktur wie die Admin-Oberfläche und wird mit dieser zusammengeführt. Das Plugin sortiert die Regeln beider Bereiche nach Priorität, bevor sie vom Frontend ausgewertet werden.
Spiegelfelder
Unsere Tracking-Felder werden Ihrem Formular dynamisch zur Renderzeit hinzugefügt. Sie sind nicht Teil der gespeicherten Feldliste des Formulars. Dadurch bleiben Ihre Formulare übersichtlich. Allerdings erstellen einige CRM-, E-Mail-Marketing- und Webhook-Add-ons ihre Feldzuordnungs-Dropdown-Menüs ausschließlich aus gespeicherten Feldern und können unsere dynamischen Felder daher nicht erkennen.
Spiegelfelder beheben das Problem. Klicken Sie unter Formulare → [Ihr Formular] → Einstellungen → Formularoptionen auf Spiegelfelder hinzufügen Das Plugin fügt Ihrem Formular einen parallelen Satz von im Editor sichtbaren, versteckten Feldern hinzu. Die ursprünglichen Tracking-Felder bleiben die maßgebliche Datenquelle; das Plugin kopiert deren erfasste Werte beim Erstellen des Eintrags in die Spiegelfelder, sodass Ihr Add-on sie über die normale Feldauswahl zuordnen kann. Der Block mit den Spiegelfeldern wird erst angezeigt, wenn die entsprechende Option für das Referral-Tracking des Formulars aktiviert ist.
Wenn Ihr Add-on die Option “Benutzerdefinierter Wert” unterstützt, benötigen Sie keine Spiegelfelder. Ordnen Sie einfach unsere Zusammenführungszeichen direkt zu (zum Beispiel). {pb_ref_source}, {pb_ref_utm_source}, {pb_ref_clid}).
Verwaltung von Spiegelfeldern:
- Spiegelfelder hinzufügen – erstellt das für den Editor sichtbare Set.
- Fügen Sie N fehlende Spiegelfelder hinzu Diese Meldung erscheint immer dann, wenn ein Formular einige, aber nicht alle der aktuellen Spiegelfelder enthält, und gibt die Anzahl an. Dies geschieht, wenn Felder manuell gelöscht werden, und auch nach der Aktivierung der Last-Touch-Attribution, wodurch neue Definitionen hinzugefügt werden. Das Plugin lässt die verbleibenden Feld-IDs unverändert, sodass gespeicherte Zuordnungen weiterhin funktionieren.
- Entfernen Sie 2 doppelte Spiegelfelder – erscheint nur bei vorhandenen Duplikaten und gibt deren Anzahl an. Es wird jeweils das erste Vorkommen gespeichert.
- Spiegelfelder entfernen – Löscht den Satz (nach Bestätigung). Bereits gespeicherte Werte aus früheren Einträgen bleiben in der Datenbank erhalten, werden aber von Add-ons nicht mehr über Feld-ID-Abfragen gefunden.
Wenn die Zuordnung der letzten Berührung aktiviert ist, können Spiegelfelder die zuletzt berührten Felder ebenfalls enthalten. Formulare, die bereits die erste Berührung erfasst haben, übernehmen diese nicht automatisch: Verwenden Sie Fügen Sie N fehlende Spiegelfelder hinzu jeweils auffüllen.
Berichte
Berichte finden Sie unter Formulare → Einstellungen → Empfehlungsverfolgung → Berichte. Dieser Tab visualisiert alle erfassten Einträge des ausgewählten Zeitraums, aufgeschlüsselt nach Quelle, UTM-Dimension und Referrer. Einträge, die vor der Aktivierung des Plugins übermittelt wurden, Einträge in Formularen mit deaktiviertem Tracking sowie gelöschte oder Spam-Einträge werden nicht berücksichtigt. Daher können diese Gesamtzahlen unter der Anzahl Ihrer Einträge in Gravity Forms liegen. Die Zeiträume umfassen ganze Tage und enden mit dem letzten abgeschlossenen Eintrag. koordinierte Weltzeit Mitternacht, damit die Zeitvergleiche vergleichbar bleiben. Je nachdem, wie weit die Zeitzone Ihrer Website von UTC entfernt ist, kann dieser Stichtag mitten in Ihren lokalen Tag fallen.

Diagramme im Überblick
- Quellenaufschlüsselung – Donut-Diagramm, das den Anteil der Einreichungen pro gekennzeichneter Quelle anzeigt (Google Organic, Facebook Ads, Ihre benutzerdefinierten Quellen, Direkt usw.).
- Einträge im Laufe der Zeit – Liniendiagramm der Gesamteinträge pro Kategorie. Beim Überfahren eines Punktes mit der Maus wird die Gesamtzahl nach Quelle aufgeschlüsselt. Längere Zeiträume (90 und 365 Tage) werden monatsweise gruppiert, um die Lesbarkeit der Achse zu gewährleisten; im 30-Tage-Zeitraum wird jedes siebte Datum als Beschriftung angezeigt, um eine Überfrachtung zu vermeiden.
- Wichtigste UTM-Quelle / Medium / Kampagne – horizontale Balkendiagramme der Werte mit den meisten Einträgen in jeder UTM-Dimension.
- Top-Empfehlungsgeber – Horizontales Balkendiagramm der verweisenden Domains, die die meisten Anfragen generieren. Das Plugin speichert den direkten Traffic mit dem Referrer.
Direct, Es erscheint hier also als eigene Leiste und nicht als Domain.
Filter
- Bilden – Beschränkung auf ein einzelnes Formular oder Auswahl von “Alle Formulare” für eine Gesamtansicht der Website.
- Datumsbereich – voreingestellte Zeiträume (Letzte 7, 30, 90 und 365 Tage).
- Im Vergleich zum Vorperiode – zeigt die Periodensumme mit ihrer prozentualen Veränderung gegenüber dem entsprechenden vorherigen Zeitraum (letzte 7 vs. die vorherigen 7, letzte 30 vs. die vorherigen 30 usw.) und überlagert diese vorherige Periode als gestrichelte Linie im Zeitdiagramm. Die UTM- und Referrer-Balkendiagramme werden nicht verglichen.
- Nicht zugeordnete ausblenden – Blendet die Kategorien „Nicht festgelegt“ und „Unbekannt“ aus, damit Sie sich auf zugeordnete Quellen konzentrieren können. Direkte Daten bleiben erhalten.
Das Plugin merkt sich Ihre Datumsbereiche, Vergleichszeiträume und Einstellungen zum Ausblenden nicht zugeordneter Elemente pro Benutzer, sodass Sie diese bei Ihrem nächsten Besuch nicht erneut festlegen müssen.
Leistung und Caching
Das Plugin berechnet Berichte aus Ihren Gravity Forms-Einträgen und speichert die Ergebnisse im Cache, sodass wiederholte Ladevorgänge schnell erfolgen. Neue Einträge überschreiben den Cache automatisch. Um eine Überlastung durch Formulare mit hohem Datenaufkommen zu verhindern, wird eine 60-sekündige Verzögerung eingeleitet. Entwickler können die Verzögerungszeit anpassen (oder vollständig deaktivieren). pb_gforms_rt_invalidate_debounce Filter. Siehe Hooks unten.
E-Mail-Zusammenfassung
Wenn Sie lieber die wichtigsten Attributionsergebnisse per E-Mail erhalten möchten, anstatt das Dashboard zu öffnen, aktivieren Sie den E-Mail-Digest unter Formulare → Einstellungen → Empfehlungs-Tracking → E-Mail-Berichte. Der von Ihnen gewählte Tag und die Uhrzeit werden in der Zeitzone Ihrer Website ausgewertet, der angegebene Zeitraum selbst wird jedoch in ganzen Tagen gemessen. koordinierte Weltzeit Die Tage werden bis Mitternacht UTC vor dem E-Mail-Versand abgedeckt. Bei Standorten weit entfernt von UTC weicht der abgedeckte Zeitraum von Ihren lokalen Tagen ab.

Trittfrequenz und Timing
- Wöchentlich – Wählen Sie den Wochentag (Sonntag bis Samstag) und die Uhrzeit, zu der die E-Mail versendet werden soll.
- Monatlich – Wählen Sie den Tag des Monats (maximal den 28., damit die E-Mail auch im Februar immer ankommt) und die Stunde.
- Der Sendeplan richtet sich nach Ihrem Zeitzone der Website (WordPress → Einstellungen → Allgemein), und auf der Einstellungsseite wird die aktuelle Uhrzeit direkt neben der Stundenauswahl angezeigt. Das Berichtsfenster selbst wird weiterhin in UTC-Tagen gemessen.
Empfänger
Eine E-Mail-Adresse pro Zeile. Wenn Sie das Feld leer lassen, wird die Standard-E-Mail-Adresse verwendet. E-Mail-Adresse des Website-Administrators zum Zeitpunkt des Versands. Das ist hilfreich, wenn sich die Administrator-E-Mail-Adresse später ändern könnte und Sie möchten, dass die Zusammenfassung automatisch aktualisiert wird.
Der Sende jetzt eine Test-E-Mail an mich Die Schaltfläche liefert denselben Verdauungskörper unter Verwendung Ihres gespeichert Einstellungen. Zwei Dinge unterscheiden sich von einem geplanten Versand: Der Betreff wird mit einem Präfix versehen. [TEST], und es ignoriert Leere Digests überspringen, Ein Testlauf während einer ruhigen Phase wird also trotzdem durchgeführt, obwohl die eigentliche Aktualisierung nicht stattgefunden hätte. Die Schaltfläche wird automatisch deaktiviert, solange ungespeicherte Änderungen vorhanden sind; speichern Sie zuerst, bevor Sie testen.
Inhaltsoptionen
- Leere Digests überspringen – Senden Sie die E-Mail gar nicht, wenn die Gesamtsumme der Zusammenfassung für den Zeitraum null beträgt. Auf einem einfachen Formular vermeiden Sie so eine leere Zusammenfassung in ruhigen Wochen. Nicht zugeordnete ausblenden Außerdem werden bei dieser Gesamtzahl die Einträge „Nicht gesetzt“ und „Unbekannt“ ignoriert, sodass ein Zeitraum, der nur nicht zugeordnete Einträge enthält, als leer gezählt und übersprungen wird.
- Im Vergleich zum Vorperiode – Zeigen Sie die prozentuale Veränderung gegenüber dem vorherigen entsprechenden Zeitraum oben in der E-Mail an (letzte Woche im Vergleich zur Woche davor, letzter Monat im Vergleich zum Monat davor usw.).
- Nicht zugeordnete ausblenden – Die Werte „Nicht festgelegt“ und „Unbekannt“ werden aus den E-Mail-Tabellen entfernt, damit der Fokus auf den zugeordneten Quellen bleibt.
Serienbrieffelder
{pb_ref_source} – Wert, der im versteckten Feld “Quelle” gespeichert ist (standardmäßig “Unbekannt”, wenn der Besuch nicht klassifiziert werden konnte).
{pb_ref_params} – vollständige Zeichenkette der erfassten Referrer-Parameter (UTMs und andere Abfragevariablen, die wir zusammenhalten).
{pb_ref_referrer} – die verweisende URL des Besuchs. Dies ist der effektive Referrer, nicht der vom Browser angegebene Wert. Wenn eine Klick-ID oder ein erkannter utm_source Anstatt die Plattform zu identifizieren, speichert das Plugin stattdessen die kanonische Plattform-URL. Dadurch wird ein gclid Besuchsprotokolle https://www.google.com/ selbst wenn der Klick über eine E-Mail erfolgte. Aufzeichnungen zu Besuchen innerhalb derselben Domain und ohne Referrer. Direct. Kein Merge-Tag gibt den unveränderten Browser-Referrer preis.
{pb_ref_utm_id} – utm_id.
{pb_ref_utm_source} – utm_source.
{pb_ref_utm_medium} – utm_medium.
{pb_ref_utm_campaign} – utm_campaign.
{pb_ref_utm_term} – utm_term.
{pb_ref_utm_content} – utm_content.
{pb_ref_clid} – erste erkannte Klick-ID für den Besuch (gclid, fbclid, msclkid und andere Plattform-Klick-IDs).
{pb_ref_custom_source} – Ihr eigenes Etikett für den Besuch, geschrieben von der pb_gforms_referral_tracking_source_label Filter (siehe Hooks). Das Tag existiert nur, wenn dem Filter eine Callback-Funktion zugeordnet ist. Das Plugin speichert die erkannte Quelle separat und ändert sie niemals.
Letzte Berührung Zusammenführungs-Tags
Wenn die Last-Touch-Attribution aktiviert ist, fügt das Plugin einen parallelen Satz hinzu:
{pb_ref_last_source}{pb_ref_last_referrer}{pb_ref_last_params}{pb_ref_last_clid}{pb_ref_last_utm_source}{pb_ref_last_utm_medium}{pb_ref_last_utm_campaign}{pb_ref_last_utm_term}{pb_ref_last_utm_content}{pb_ref_last_utm_id}{pb_ref_last_custom_source}
Jedes dieser Elemente spiegelt sein ursprüngliches Äquivalent wider, speichert aber die zuletzt vor der Übermittlung verwendete Quelle. {pb_ref_last_custom_source} benötigt auch die pb_gforms_referral_tracking_source_label Filter, derselbe wie sein First-Touch-Pendant.
Senden von Daten an Google Analytics
Die Referral-Source-Tracking-Funktion kontaktiert Google niemals selbstständig. Alle erfassten Daten bleiben in Ihrem Gravity Forms-Eintrag erhalten. Wenn Sie die GA4-Einstellung aktivieren, sendet Ihr eigenes Google-Tag das Ereignis.
Ab Version 1.6.0 können Sie sich für ein GA4-Ereignis anmelden. Aktivieren Sie GA4/Tag Manager unter Formulare → Einstellungen → Referral-Tracking → Allgemein. Nach der Bestätigung sendet das Plugin ein benutzerdefiniertes Ereignis mit dem Namen pb_referral_submit (In denselben Einstellungen umbenennen) mit den Parametern Quelle, Referrer, Klick-ID und UTM sowie den Werten für die letzte Berührung, falls diese Funktion aktiviert ist. Eine fehlgeschlagene Validierung wird nicht gesendet. Weiterleitungs- und Seitenbestätigungen benötigen Version 1.7.1.
Prüfen Sie GA4 Realtime oder DebugView auf das Ereignis. Sie benötigen keinen Tag-Manager-Trigger. Ihr eigenes Google-Tag sendet die Benachrichtigung; das Plugin kontaktiert Google nicht.
Optional: Sie können auch Platzhalter in der Bestätigungsabfragezeichenfolge für die Weiterleitung (siehe unten) übergeben, falls Sie die Kampagnenparameter bereits in der Dankes-URL konvertieren. Dies ist unabhängig vom benutzerdefinierten Ereignis.
Was die Veranstaltung mit sich bringt
Die Parameterschlüssel entsprechen den Namen der Zusammenführungs-Tags. Leere Werte werden vollständig aus der Nutzlast entfernt, und das Ereignis wird höchstens einmal pro Seitenaufruf ausgelöst.
| Parameter | Wert |
|---|---|
pb_ref_source | Beschriftete Quelle, z. B. Google Ads |
pb_ref_referrer | Effektive Referrer-URL |
pb_ref_clid | Erste erkannte Klick-ID |
pb_ref_params | Vollständiger Parameterstring |
pb_ref_utm_source, _medium, _campaign, _term, _content, _id | Die sechs UTM-Werte |
pb_ref_last_* | Das parallele Last-Touch-Set, nur wenn die Last-Touch-Attribution aktiviert ist. |
pb_ref_form_id | Die Formular-ID von Gravity Forms. Sie ist nur bei AJAX-Bestätigungen vorhanden, bei denen die ID bekannt ist. |
Optional: Werte in der Dankes-URL übergeben
- Öffnen Sie die Bestätigungen Ihres Formulars unter Formulare → [Ihr Formular] → Einstellungen → Bestätigungen, Dann bearbeiten (oder fügen Sie hinzu) ein Umleiten Bestätigung.
- Im Weiterleitungs-URL Geben Sie im Feld Ihre Dankesseiten-URL gefolgt von einer Abfragezeichenfolge ein, die aus den Tracking-Merge-Tags erstellt wird:
https://yoursite.com/thank-you/?gclid={pb_ref_clid}&utm_source={pb_ref_utm_source}&utm_medium={pb_ref_utm_medium}&utm_campaign={pb_ref_utm_campaign}&utm_term={pb_ref_utm_term}&utm_content={pb_ref_utm_content}Gravity Forms füllt die Felder beim Absenden automatisch aus und codiert die Werte in eine URL, sodass ein Besucher, der über eine Google-Anzeige gelangt ist, auf einer URL wie der folgenden landet:
https://yoursite.com/thank-you/?gclid=EAIaIQ...&utm_source=google&utm_medium=cpc&utm_campaign=spring-saleIhre GA4- oder Google Tag Manager-Konfiguration auf der Dankesseite liest diese Parameter dann genauso aus wie jede andere Kampagnen-URL und löst Ihr Conversion- oder Lead-Ereignis mit der erfassten Quelle, der Kampagne und der Klick-ID aus. Werte, die für einen bestimmten Besuch nicht erfasst wurden, werden als leer angezeigt.
Sie können hier beliebige Tracking-Merge-Tags verwenden. Siehe Serienbrieffelder Die vollständige Liste finden Sie hier. (Falls Sie es vorziehen, die Felddaten über Abfragezeichenfolge übergeben (Diese Option in der Bestätigungs-Weiterleitung akzeptiert dieselben Merge-Tags.)
Warum sollten Sie Platzhalter anstelle eigener versteckter Felder verwenden?
Wenn Sie bereits Kampagnendaten aus Ihren eigenen ausgeblendeten Feldern an Ihre Dankesseite übermitteln, verwenden Sie stattdessen unsere Zusammenführungs-Tags. Sowohl der im Eintrag gespeicherte Wert als auch der an GA4 gesendete Wert stammen dann aus derselben Datenquelle und können sich daher nicht voneinander unterscheiden. Eintrag und GA4 zeigen immer dieselbe Kampagne an. Außerdem müssen Sie dadurch ein Feld weniger pflegen.
Ein Hinweis zu Klick-IDs
{pb_ref_clid} speichert die erste Klick-ID, die beim Besuch erkannt wurde, unabhängig von der Plattform, von der der Klick stammt: gclid für Google, aber auch msclkid (Microsoft), fbclid (Meta) und andere. Wenn Sie es speziell einem bestimmten Element zuordnen gclid= Parameter für Google Ads: Bei einem Besuch außerhalb von Google wird die Klick-ID in diesem Feld eingetragen. Wenn die Klick-ID nur bei Besuchen über Google Ads berücksichtigt werden soll, fügen Sie der Bestätigung eine bedingte Logik hinzu. gclid= Der Parameter wird nur gesendet, wenn Quelle ist Google Ads.
Überprüfung der Funktion
Sie können die gesamte Kette in vier Schritten bestätigen:
- Fügen Sie Testparameter zu einer beliebigen Landingpage-URL hinzu (zum Beispiel
?gclid=TEST123&utm_source=google&utm_medium=cpc), und senden Sie dann das Formular ab. - Überprüfen Sie auf der Dankesseite die Adressleiste: Ihre Werte sollten in der URL enthalten sein.
- Öffnen Sie die Entwicklertools Ihres Browsers und gehen Sie zu Netzwerk Registerkarte und Filter für
collect. Die Anfrage an Google sollte IhregclidundutmWerte. - Empfang in GA4 bestätigen DebugView oder Echtzeit Bericht.
Testen Sie das Plugin in einem privaten oder abgemeldeten Fenster. Solange Sie als Administrator angemeldet sind, läuft das Plugin absichtlich im Sitzungsmodus und schreibt Cookies ohne Ablaufdatum, sodass das Attributionsfenster in einer Administratorsitzung nicht reproduziert werden kann.
Diese vier Schritte prüfen die optionale Abfragezeichenfolgenmethode. Für das integrierte benutzerdefinierte Ereignis senden Sie das Formular ab und öffnen Sie anschließend auf der Bestätigungs- oder Dankesseite die Entwicklertools → Netzwerk. Filtern Sie nach g/collect, und suchen Sie nach en=pb_referral_submit (oder Ihr Veranstaltungsname). Alternativ können Sie GA4 DebugView verwenden. Befindet sich die Veranstaltung im Netzwerk-Tab, aber nicht in GA4, liegt die Lücke an Ihrem Google-Tag. Ist sie nicht im Netzwerk-Tab vorhanden, wurde das Plugin nicht ausgelöst.
Das Ereignis wird an GA4 gesendet.
Ab Version 1.6.0 können Sie die bereits im Gravity Forms-Eintrag hinterlegte Quelle als benutzerdefiniertes Ereignis an GA4 senden. Diese Funktion ist standardmäßig deaktiviert. Ihr eigenes Google-Tag übernimmt das Senden – das Plugin kontaktiert Google selbst nicht. Überprüfen Sie GA4 Realtime oder DebugView auf das Ereignis. Sie benötigen keinen Tag-Manager-Trigger.
Gehe zu Formulare → Einstellungen → Empfehlungsverfolgung → Allgemein. Häkchen Sende die erfassten Parameter bei Formularbestätigung als benutzerdefiniertes Ereignis an GA4.. Lassen Sie den Ereignisnamen unverändert. pb_referral_submit Sofern Sie keinen Grund haben, dies zu ändern, klicken Sie auf „Änderungen speichern“.

Übersetzungen
Dieses Plugin ist übersetzungsbereit und enthält gebündelte Übersetzungen für:
- Arabisch (
ar) - Bengali (
bn_BD) - Filipino (
fil) - Deutsch (
de_DE) - Spanisch (
es_ES) - Spanisch (
es_MX) - Französisch (
fr_FR) - Hindi (
hi_IN) - Indonesisch (
id_ID) - Italienisch (
it_IT) - Japanisch (
ja) - Portugiesisch (
pt_BR) - Russisch (
ru_RU) - Urdu (
ur) - Chinesisch vereinfacht (
zh_CN) - Chinesische Tradition (
zh_HK)
Standardsprache: Englisch (en_US)
Wenn Ihre Sprache nicht aufgeführt ist unter Übersetzungen Sie können das Plugin auch selbst übersetzen. Es ist übersetzungsfertig. Nutzen Sie die kostenlose Version. Loco Translate-Plugin Um eine Übersetzung für die Sprache/das Gebietsschema Ihrer Website zu erstellen. Neu bei Loco Translate? Hier erfahren Sie mehr. ein anfängerfreundliches Tutorial.
FAQs
Kann ich die Daten exportieren?
Ja. Die Tracking-Werte werden bei jedem Gravity Forms-Eintrag gespeichert und sind daher auch in den exportierten Einträgen sichtbar.
Was genau erfasst das Plugin?
Wir erfassen gängige Attributfelder und speichern sie im Gravity Forms-Eintrag. Dazu gehören: UTM-Parameter (Quelle, Medium, Kampagne, Begriff, Inhalt), Klick-IDs (gclid, msclkid, gbraid/wbraid usw.), die ursprüngliche Referrer-URL, und den zugehörigen Kontext der Landingpage, damit Sie sehen können, woher jeder Lead stammt.
Kann ich benutzerdefinierte Datenquellen hinzufügen?
Ja. Regeln hinzufügen unter Formulare → Einstellungen → Empfehlungs-Tracking → Benutzerdefinierte Quellen Partnerseiten, Affiliate-Traffic, Markenkampagnen und ähnliche Besuche können namentlich gekennzeichnet werden. Jede Regel gleicht den Referrer-Host oder einen UTM-Parameter ab und weist ein von Ihnen gewähltes Label zu. Siehe die Benutzerdefinierte Quellen Abschnitt mit detaillierten Feldbeschreibungen und durchgerechneten Beispielen.
Mein CRM-/E-Mail-/Webhook-Add-on erkennt die Tracking-Felder nicht in der Zuordnungsliste. Was kann ich tun?
Unsere Tracking-Felder werden Ihrem Formular dynamisch zur Renderzeit hinzugefügt und nicht in der Feldliste des Formulars gespeichert. Daher können Add-ons, die ihre Dropdown-Liste nur aus gespeicherten Feldern erstellen, diese Felder nicht sehen. Sie haben zwei Möglichkeiten: Wenn Ihr Add-on über eine Zuordnung von “Benutzerdefinierten Werten” verfügt, ordnen Sie unsere Platzhalter direkt zu ({pb_ref_source}, {pb_ref_utm_source}, {pb_ref_clid}, usw.). Falls nur ein Dropdown-Menü unterstützt wird, öffnen Sie Formulareinstellungen → Formularoptionen → Felder spiegeln und klicken Sie auf Spiegelfelder hinzufügen. Dadurch werden im Editor sichtbare, versteckte Felder hinzugefügt, die vom Plugin automatisch ausgefüllt werden. Eine vollständige Anleitung finden Sie im Abschnitt „Spiegelfelder“.
Wo werden die Empfehlungsdaten gespeichert?
In Ihrer WordPress-Datenbank, genauer gesagt in Ihren Gravity Forms-Einträgen. Das Plugin sendet die Daten niemals selbstständig. Wenn Sie die erfassten Werte in GA4 verwenden möchten, aktivieren Sie die entsprechende Einstellung. Das Plugin bleibt die Datenquelle; die Übermittlung erfolgt über Ihr eigenes Google-Tag.
Handelt es sich um First-Touch- oder Last-Touch-Attribution?
Beides. Standardmäßig wird die First-Touch-Attribution verwendet, wobei der ursprüngliche Referrer und die Kampagnenparameter gespeichert werden, die den Besucher (innerhalb des Attributionszeitraums) zuerst auf Ihre Website geführt haben. Es gibt ein Kontrollkästchen, um direkte Folgebesuche zu ignorieren, sodass die Last-Touch-Attribution die vorherige Anzeige oder den Referrer beibehält. Klick-IDs von Folgebesuchen werden nur unter „Click ID (Last Touch)“ gespeichert. Dadurch erhalten Sie einen parallelen Satz von {pb_ref_last_*} Zusammenführungs-Tags, Eintragslistenspalten und CSV-Exportspalten. Die Registerkarte „Berichte“ enthält eine Option zum Umschalten zwischen den Ansichten „Erster/Letzter“, mit der jedes Diagramm zwischen den beiden Ansichten umgeschaltet werden kann.
Wie lange werden die Besucherdaten gespeichert?
Das Attributionsfenster ist standardmäßig auf 7 Tage eingestellt und kann unter Formulare → Einstellungen → Referral-Tracking geändert werden. Wenn ein Besucher innerhalb dieses Zeitraums nach seinem ersten erfassten Besuch ein Formular absendet, werden für diesen Eintrag die ursprünglichen Attributionswerte des ersten Kontakts verwendet.
Funktioniert es mit Caching/CDNs?
Normalerweise ja. Tracking läuft clientseitig, daher funktionieren die meisten Caching-/CDN-Konfigurationen problemlos. Wenn Sie aggressive Skriptoptimierung (Minifizierung oder verzögerte Ausführung) verwenden, aktivieren Sie das Kontrollkästchen. Skripte vor Optimierung schützen Unter Formulare → Einstellungen → Referral-Tracking → Erweitert leeren Sie anschließend Ihren Cache. Dadurch werden die Skripte des Plugins markiert, sodass sie übersprungen werden, und automatisch zu den Ausschlusslisten von WP Rocket, LiteSpeed Cache, SG Optimizer, Autoptimize und Cloudflare Rocket Loader hinzugefügt. Falls Sie Breeze oder einen anderen Minifier verwenden, der nicht in dieser Liste enthalten ist, schließen Sie die beiden unten aufgeführten Dateien manuell aus und leeren Sie nach einem Update den CDN-Cache für diese Dateien.
Falls diese Einstellung keinen Optimierer abdeckt, schließen Sie diese beiden Dateien manuell aus und testen Sie eine Einreichung:
/wp-content/plugins/pb-gforms-referral-tracking/assets/js/front-end.js/wp-content/plugins/pb-gforms-referral-tracking/assets/dist/js.cookie.min.js
Funktioniert es mit AJAX-fähigen Gravity Forms?
Ja. Es funktioniert sowohl mit AJAX-Formularen als auch mit Standard-Formularübermittlungen (ohne AJAX). Weiterleitungen und Bestätigungsseiten mit Dankesfunktion in Gravity Forms 2.9+ benötigen Version 1.7.1 für das GA4-Ereignis.
Kann ich mehr als ein Formular verfolgen?
Ja. Es funktioniert für alle Ihre Gravity Forms. Jede Einreichung speichert ihre eigenen Attributierungswerte für diesen Eintrag.
Ersetzt dies das Conversion-Tracking von GA4 / Google Ads?
Nein. Es handelt sich um eine Datenquelle, nicht um ein Conversion-Pixel, und es werden weder Pixel ausgelöst noch Google selbst kontaktiert. Wenn Sie die Zuordnung in GA4 wünschen, sendet die entsprechende Einstellung in GA4/Tag Manager die Daten als benutzerdefiniertes Ereignis über Ihr eigenes Google-Tag bei der Formularbestätigung.
Werden personenbezogene Daten erfasst?
Standardmäßig erfasst es Attributionsdaten (UTMs, gclid, Referrer-URLs). Es tut nicht Zusätzliche personenbezogene Daten werden standardmäßig erfasst. Ihre Formularfelder und alle in URLs enthaltenen Parameter werden durch Ihre Website- und Marketingeinstellungen gesteuert.
Ist es DSGVO-/CCPA-konform?
Wenn Sie vor der Erfassung von Zuordnungsdaten eine Einwilligung benötigen, aktivieren Sie das optionale Einwilligungsgate. Dieses speichert die Erstkontaktdaten im Browser, bis der Besucher über Ihr Cookie-Banner (mittels eines Fensterflags, eines Callbacks oder eines Ereignisses) seine Einwilligung erteilt. Anschließend werden die Daten angewendet.
Funktioniert es mit einem WordPress-Multisite-Netzwerk?
TL;DR
- Unbegrenzte Lizenz: Netzwerkmodus einmalig aktivieren; eine Taste kann verwaltet werden jeder Einstellungen und Support für die Subsite.
- Netzwerkaktiviert: Alle Subsites nutzen Referral-Tracking und erhalten Aktualisierungen sofort.
- Eingeschränkter Tarif / keine Unterstandortlizenz: Das Tracking ist auf dieser Unterseite inaktiv. Es werden keine Tracking-Felder, Zusammenführungs-Tags oder Eingabedaten erfasst, bis dort ein Schlüssel aktiviert wird oder der Netzwerkmodus einen solchen Schlüssel sendet.
- Der Support richtet sich nach der Lizenz: Standorte, die durch den aktiven Schlüssel abgedeckt sind, sind teilnahmeberechtigt.
Ja, sobald jede Subsite lizenziert und aktiviert ist. Die Netzwerkaktivierung installiert das Plugin überall und Aktualisierungen werden netzwerkweit verwaltet. Jede Subsite benötigt jedoch eine eigene aktivierte Lizenz (oder einen unbegrenzten Lizenzschlüssel, der ihr über den Netzwerkmodus zugewiesen wird), bevor das Plugin Tracking-Felder hinzufügt oder Werte erfasst. Aktivieren Sie anschließend dort die Option „Standardmäßig aktivieren“ oder das Tracking pro Formular.
Mit einer Unlimited-Lizenz können Sie den Netzwerkmodus auf der Hauptseite aktivieren und diesen Schlüssel in einem Schritt (mit Live-Fortschritt) an alle Subsites verteilen. Diese Subsites übernehmen die lizenzverwalteten Einstellungen und werden automatisch unterstützt.
Einstellungen-Referenz
Alles darunter lebt unter Formulare → Einstellungen → Empfehlungsverfolgung, auf dem in der jeweiligen Überschrift genannten Reiter.
Daten & Datenschutz
| Einstellung | Standard | Was es tut |
|---|---|---|
| Cookieless Fallback Storage | Off | Off speichert die Quellenangabe ausschließlich in Cookies. Persistent Für Besucher, die Cookies blockieren, greift der Browser auf den lokalen Speicher zurück und verwirft alle Daten, die älter als der Erfassungszeitraum sind. Diese Funktion wird nur genutzt, wenn keine Cookies verfügbar sind. Bei aktiviertem Consent Gate schreibt das Tracking-Skript erst nach erfolgter Einwilligung in den lokalen Speicher. Für den Browserspeicher gelten dieselben Anforderungen der DSGVO und der ePrivacy-Richtlinien wie für Cookies. Daher sollten Sie dies in Ihren Datenschutzbestimmungen berücksichtigen. |
| Daten bei Deinstallation entfernen | Off | Die Option „Aus“ lässt beim Löschen des Plugins alles unverändert. Die Option „Ein“ löscht hingegen alle Plugin-Einstellungen, die Tracking-Konfiguration pro Formular, Lizenzdaten, geplante Ereignisse und die Berichtseinstellungen pro Benutzer. Ihre Gravity Forms-Einträge und die darin gespeicherten Tracking-Werte bleiben in beiden Fällen unberührt. |
Fortgeschritten
| Einstellung | Standard | Was es tut |
|---|---|---|
| Skripte vor Optimierung schützen | Off | Markiert die Frontend-Skripte des Plugins, sodass sie von den Tools zur Minimierung und Verzögerung übersprungen werden, und trägt sie in die Ausschlusslisten von WP Rocket, LiteSpeed Cache, SG Optimizer, Autoptimize und Cloudflare Rocket Loader ein. Aktivieren Sie diese Option, falls nach der Aktivierung eines Caching-Plugins Referrer-Daten fehlen. |
Zustimmungstor
Hierfür gibt es kein Kontrollkästchen. Die Zustimmungsabfrage ist eine Entwickler-Option: festlegen consentRequired durch die pb_gforms_referral_tracking_js_config Filter. Das Tracking-Skript speichert die Daten der ersten Berührung in sessionStorage bis die Zustimmung vorliegt, dann wird es zur dauerhaften Speicherung weitergeleitet.
add_filter( 'pb_gforms_referral_tracking_js_config', function( $config ) {
$config['consentRequired'] = true;
return $config;
} );Erteilen Sie Ihr Cookie-Einwilligungssignal auf eine der folgenden drei Arten:
- Satz
window.PBReferralTrackingConsent = true. - Das Ereignis auslösen:
window.dispatchEvent( new Event( 'pb-ref-tracking:consent-granted' ) ). - Weisen Sie eine
consentGrantedCallback-Funktion, die „true“ zurückgibt, sobald die Zustimmung vorliegt.
Haken
Aktionen
pb_gforms_referral_tracking_loaded
Wird ausgelöst, sobald das Plugin vollständig initialisiert ist: Klassen geladen, Hooks registriert, API bereit. Dies ist der zuverlässige Startpunkt für Add-ons oder Begleit-Plugins, die Referral Source Tracking erweitern.
Parameter:
$plugin(Plugin) – Die Plugin-Instanz.
add_action( 'pb_gforms_referral_tracking_loaded', function( $plugin ) {
// Safe to interact with the plugin's classes and filters here.
// Example: register your own add-on after the plugin is ready.
if ( class_exists( 'MyReferralAddon' ) ) {
new MyReferralAddon( $plugin );
}
} );Filter
pb_gforms_referral_tracking_enabled
Legen Sie fest, ob die Weiterleitungsverfolgung für ein bestimmtes Formular aktiviert ist. Geben Sie „true“ zurück, um die Verfolgung zu erzwingen, und „false“, um sie zu deaktivieren, unabhängig von der Einstellung für das jeweilige Formular oder der globalen Standardeinstellung.
Parameter:
$enabled(bool) – Ob die Nachverfolgung aktuell aktiviert ist.$form_id(int) – Die ID des aktuellen Formulars.$form(array|null) – Das Formular-Meta-Array oder null, falls nicht verfügbar.
// Disable tracking on a specific form (e.g. an internal staff-only form).
add_filter( 'pb_gforms_referral_tracking_enabled', function( $enabled, $form_id, $form ) {
$excluded_form_ids = [ 12, 27 ];
if ( in_array( $form_id, $excluded_form_ids, true ) ) {
return false;
}
return $enabled;
}, 10, 3 );pb_gforms_referral_tracking_field_definitions
Filtern Sie die Liste der versteckten Tracking-Felddefinitionen, bevor das Plugin sie in das Formular einfügt. Verwenden Sie diese Funktion, um einzelne Tracking-Felder hinzuzufügen, zu entfernen oder zu ändern.
Parameter:
$fields(Array) – Array von Felddefinitions-Arrays.$form(Array) – Die aktuelle Form meta.
// Remove the Referral Parameters field from all forms.
add_filter( 'pb_gforms_referral_tracking_field_definitions', function( $fields, $form ) {
return array_filter( $fields, function( $field ) {
return ! isset( $field['cssClass'] ) || $field['cssClass'] !== 'pb-ref-tracking-ref-params';
} );
}, 10, 2 );pb_gforms_referral_tracking_form
Filtern Sie das gesamte Formular-Array, nachdem das Plugin alle seine Tracking-Felder hinzugefügt hat. Das endgültige Formularobjekt können Sie vor dem Rendern bearbeiten.
Parameter:
$form(Array) – Das Formular-Array mit bereits hinzugefügten Tracking-Feldern.$field_definitions(Array) – Die verwendeten Felddefinitionen.
// Log which forms have tracking fields injected (useful for debugging).
add_filter( 'pb_gforms_referral_tracking_form', function( $form, $field_definitions ) {
error_log( 'Referral tracking fields added to form ID: ' . $form['id'] );
return $form;
}, 10, 2 );pb_gforms_referral_tracking_merge_tag_map
Ändern Sie die Zuordnung der Zusammenführungs-Tags, die festlegt, welche Zusammenführungs-Tags verfügbar sind und auf welche Feld-IDs sie verweisen. Verwenden Sie diese Funktion, um benutzerdefinierte Zusammenführungs-Tags hinzuzufügen oder vorhandene umzubenennen.
Parameter:
$map(Array) – Assoziatives Array von Tag => [ 'label' => string, 'field_id' => string ].$base_id(Zeichenkette) – Das Basisfeld-ID-Präfix.$constants(Konstanten) – Die Plugin-Konstanteninstanz.
// Rename the "Source" merge tag label as it appears in the GF dropdown.
add_filter( 'pb_gforms_referral_tracking_merge_tag_map', function( $map, $base_id, $constants ) {
if ( isset( $map['pb_ref_source'] ) ) {
$map['pb_ref_source']['label'] = 'Traffic Source';
}
return $map;
}, 10, 3 );pb_gforms_referral_tracking_value
Filtern Sie den Rohwert eines Tracking-Felds, bevor das Plugin ihn formatiert und zum Ersetzen eines Platzhalters in einer Benachrichtigung oder Bestätigung verwendet. Hier können Sie einen bestimmten Wert bereinigen oder transformieren.
Parameter:
$value(Zeichenkette) – Der Rohfeldwert.$tag(Zeichenkette) – Der Merge-Tag-Schlüssel (z. B. pb_ref_source).$data(Array) – Die Merge-Tag-Metadaten (Label, Feld-ID).$entry(Array) – Der aktuelle Eintrag.$form(Array) – Die aktuelle Form.
// Truncate long referrer URLs in merge tag output.
add_filter( 'pb_gforms_referral_tracking_value', function( $value, $tag, $data, $entry, $form ) {
if ( $tag === 'pb_ref_referrer' && strlen( $value ) > 100 ) {
return substr( $value, 0, 100 ) . '…';
}
return $value;
}, 10, 5 );pb_gforms_referral_tracking_formatted_value
Filtern Sie den vollständig formatierten Merge-Tag-Wert, nachdem Gravity Forms seine eigene Formatierungspipeline darauf angewendet hat (Escaping, URL-Codierung usw.).
Parameter:
$formatted(Zeichenkette) – Die formatierte Ausgabezeichenfolge.$tag(Zeichenkette) – Der Merge-Tag-Schlüssel.$data(Array) – Die Merge-Tag-Metadaten.$entry(Array) – Der aktuelle Eintrag.$form(Array) – Die aktuelle Form.$url_encode(bool)$esc_html(bool)$nl2br(bool)$format(Zeichenkette)
// Wrap the source value in a bold tag in HTML-format notifications.
add_filter( 'pb_gforms_referral_tracking_formatted_value', function( $formatted, $tag, $data, $entry, $form, $url_encode, $esc_html, $nl2br, $format ) {
if ( $tag === 'pb_ref_source' && $format === 'html' && ! $url_encode ) {
return '<strong>' . $formatted . '</strong>';
}
return $formatted;
}, 10, 9 );pb_gforms_referral_tracking_default_value
Überschreiben Sie den Ausweichwert, der verwendet wird, wenn ein Tracking-Feld zum Zeitpunkt der Übermittlung leer ist. Der Standardwert ist “Unbekannt”.
Parameter:
$default(Zeichenkette) – Der aktuelle Standardwert (“Unbekannt”).$key(Zeichenkette) – Kontextschlüssel: Quelle, Referrer oder Frontend.
// Use "Direct" instead of "Unknown" for the source field fallback.
add_filter( 'pb_gforms_referral_tracking_default_value', function( $default, $key ) {
if ( $key === 'source' ) {
return 'Direct';
}
return $default;
}, 10, 2 );pb_gforms_referral_tracking_js_config
Überschreiben Sie das gesamte Frontend-JavaScript-Konfigurationsobjekt, bevor das Plugin es an das Tracking-Skript übergibt. Ihre Callback-Funktion steuert die Cookie-Einstellungen und die Quellzuordnungen (utmSourceMap und utmReferrerMap), bekannten Quellen und der paidClickIds Liste, die festlegt, welche Abfrageparameter einen bezahlten Klick nachweisen.
Parameter:
$config(Array) – Das vollständige JS-Konfigurationsarray.
Die Tasten mit ihren Standardeinstellungen:
| Schlüssel | Standard | Bedienelemente |
|---|---|---|
cookieExpiry | 7 | Attributionszeitraum in Tagen. |
cookiePrefix | pb-ref-tracking- | Jedem gespeicherten Schlüssel wird ein Präfix vorangestellt. |
cookiePath | / | Cookie-Pfad. |
cookieSameSite | Lax | SameSite-Attribut. |
defaultValue | Unknown | Wertangabe, obwohl keine Daten erfasst wurden. |
appendOrganicPaid | true | Ob individuell gestaltete Etiketten den Zusatz „Bio/Werbung“ erhalten. |
paidClickIds | 10 IDs | Abfrageparameter, die einen bezahlten Klick nachweisen und somit ein Anzeigenlabel erzeugen. |
utmSourceMap / utmReferrerMap | siehe unten | Einfache String-Abbildungen von einem utm_source einem Label und einer kanonischen Referrer-URL einen Wert zuweisen. |
customSources | [] | Benutzerdefinierte Quellregeln. Verwenden Sie vorzugsweise den oben genannten dedizierten Filter. |
sessionOnlyMode | false | Sitzungscookies ohne Ablaufdatum. Für angemeldete Administratoren erzwungen. |
fallbackStorage | none | local aktiviert den Cookie-losen Fallback. |
consentRequired / consentGranted | false / null | Die Zustimmungsprüfung. Siehe Einstellungen. |
enableLastTouch | false | Erfassen Sie auch die zuletzt festgelegte Berührungseinstellung. |
enableDataLayerPush | false | Das GA4-Ereignis auslösen. |
dataLayerEventName | pb_referral_submit | Name dieser Veranstaltung. |
trackingFieldBaseId | '' | Basis-Feld-ID für die eingefügten Felder. |
debug | false | Aktivieren Sie diese Option, um die Protokollierung von Besuchserkennungsentscheidungen in der Browserkonsole anzuzeigen. So lässt sich am schnellsten nachvollziehen, warum ein Besuch so gekennzeichnet wurde. |
sourcePatterns ist absichtlich nicht in dieser Liste enthalten. Seine Einträge benötigen Live-JavaScript. RegExp Objekte und alle Rückgabewerte eines PHP-Callbacks werden nach der JSON-Kodierung der Konfiguration als String übergeben, was beim Abgleich einen Fehler auslöst. Um die Referrer-Muster zu erweitern, weisen Sie Folgendes zu: window.PBReferralTrackingConfig aus JavaScript, bevor das Tracking-Skript ausgeführt wird.
// Extend cookie lifetime to 30 days and add a custom paid medium.
add_filter( 'pb_gforms_referral_tracking_js_config', function( $config ) {
// Extend the first-touch attribution window to 30 days.
$config['cookieExpiry'] = 30;
// Turn on the cookieless localStorage fallback for visitors who block cookies.
$config['fallbackStorage'] = 'local';
return $config;
} );pb_gforms_referral_tracking_custom_sources
Das Plugin fügt programmatisch benutzerdefinierte Quellregeln ein, die parallel zu den in der Admin-Oberfläche konfigurierten Regeln ausgeführt werden. Es führt die Regeln dieses Filters mit den gespeicherten UI-Regeln zusammen, sortiert das kombinierte Set nach Priorität und übergibt es an das Frontend.
Parameter:
$sources(Array) – Leeres Array. Gibt ein Array von Regel-Arrays zurück, die hinzugefügt werden sollen.
Jede Regel muss Folgendes enthalten: Bezeichnung, Übereinstimmungsfeld (Referrer, utm_source, utm_medium, utm_campaign, utm_term, utm_content), Übereinstimmungstyp (enthält oder gleich), Übereinstimmungswert und optional Priorität (Standard 10, höhere Prioritäten werden zuerst ausgeführt).
Regeln, die über diesen Filter hinzugefügt wurden, können auch verwendet werden referrer_url Das Feld „matchField“ gleicht die vollständige Referrer-URL inklusive Pfad und Abfrage ab, nicht nur den Host. Die Admin-Oberfläche bietet diese Funktion nicht an, daher ist sie nur hier verfügbar.
// Add partner and affiliate sources without touching the admin UI.
add_filter( 'pb_gforms_referral_tracking_custom_sources', function( $sources ) {
$sources[] = [
'label' => 'Partner: Acme Corp',
'matchField' => 'referrer',
'matchType' => 'contains',
'matchValue' => 'acme.com',
'priority' => 20,
];
$sources[] = [
'label' => 'Campaign: Spring Sale',
'matchField' => 'utm_campaign',
'matchType' => 'contains',
'matchValue' => 'spring-sale',
'priority' => 10,
];
return $sources;
} );pb_gforms_referral_tracking_source_label
Geben Sie beim Absenden eine eigene Bezeichnung in ein separates Feld für benutzerdefinierte Quellen ein. Die erkannte Quelle bleibt unverändert, sodass der Eintrag beides beibehält: die vom Plugin ermittelte und die von Ihnen zurückgegebene Quelle. Dies ist nützlich, wenn ein CRM eine vereinfachte oder interne Bezeichnung benötigt und Sie die eigentliche Quelle nicht verlieren möchten. Seit Version 1.6.0.
Die Funktion wird durch das Hinzufügen einer Callback-Funktion aktiviert. Ohne Callback existieren die benutzerdefinierten Quellfelder und ihre Platzhalter nicht. Nach dem Hinzufügen eines Callbacks fügt das Plugin Ihren Formularen ein benutzerdefiniertes Quellfeld sowie ein benutzerdefiniertes Quellfeld (Letzter Kontakt) hinzu, sofern die Zuordnung des letzten Kontakts aktiviert ist. Geben Sie eine leere Zeichenkette zurück, um das Feld für einen bestimmten Besuch leer zu lassen; es wird nicht auf die erkannte Bezeichnung zurückgegriffen.
Parameter:
$label(Zeichenkette) – Die erkannte Quellbezeichnung, zum BeispielGoogle Ads.$key(Zeichenkette) – Welche Berührung wird als solche bezeichnet?sourceoderlast_source.$form(Array) – Das aktuelle Formularobjekt.
// Roll the detected source up into a few buckets for the CRM.
add_filter( 'pb_gforms_referral_tracking_source_label', function( $label, $key, $form ) {
if ( 0 === strpos( $label, 'Google' ) || 0 === strpos( $label, 'Bing' ) ) {
return 'Search';
}
if ( 0 === strpos( $label, 'Facebook' ) || 0 === strpos( $label, 'Instagram' ) ) {
return 'Social';
}
// Anything else: leave the Custom Source field empty.
return '';
}, 10, 3 );pb_gforms_referral_tracking_enqueue_assets
Steuern Sie, ob die Frontend-Ressourcen des Plugins (Cookie-Bibliothek und Tracking-Skript) geladen werden. Geben Sie „false“ ein, um das Laden auf einer Seite oder unter einer bestimmten Bedingung vollständig zu deaktivieren.
Parameter:
$enqueue(bool) – Gibt an, ob Assets in die Warteschlange gestellt werden sollen. Standardmäßig aktiviert.
// Disable tracking assets on the homepage only.
add_filter( 'pb_gforms_referral_tracking_enqueue_assets', function( $enqueue ) {
if ( is_front_page() ) {
return false;
}
return $enqueue;
} );pb_gforms_referral_tracking_inline_css
Überschreiben Sie das Inline-CSS, das Tracking-Felder im Frontend und in der Block-Editor-Vorschau ausblendet. Das Standard-CSS blendet die Wrapper für Tracking-Felder, den Legacy-Tracker von Google Ads und Spiegelfelder aus und zielt auf die Zielgruppenansprache ab. .gform_wrapper .gfield mit den Klassenpräfixen pb-ref-tracking-, pb-gads-tracking- und pb-ref-mirror-.
Parameter:
$css(Zeichenkette) – Die Inline-CSS-Zeichenkette.
// Replace the default hide rule with a more specific selector.
add_filter( 'pb_gforms_referral_tracking_inline_css', function( $css ) {
return '.my-theme .gform_wrapper .gfield[class*="pb-ref-tracking-"] { display: none !important; }';
} );pb_gforms_rt_invalidate_debounce
Passen Sie das Entprellfenster für die Cache-Invalidierung von Berichten an (oder deaktivieren Sie es). Nach dem Eingang eines neuen Eintrags wird der Berichtscache maximal einmal pro Sekunden neu erstellt, um zu verhindern, dass häufige Formularzugriffe den Cache überlasten. Der Standardwert beträgt 60 Sekunden; geben Sie 0 ein, um den Cache bei jedem Eintrag sofort zu invalidieren.
Parameter:
$seconds(int) – Die Entprellzeit in Sekunden. Standardwert: 60.
// Rebuild Reports data immediately on every new entry (no debounce).
add_filter( 'pb_gforms_rt_invalidate_debounce', function( $seconds ) {
return 0;
} );pb_gforms_referral_tracking_mirror_field_definitions
Passen Sie die persistenten Spiegelfelddefinitionen an, die beim Hinzufügen von Spiegelfeldern zu einem Formular erstellt werden. label ist der Teil, den Sie bedenkenlos ändern können.
Verlassen cssClass allein. Beim Absenden liest das Plugin den kanonischen Tracking-Schlüssel wieder aus, alles danach pb-ref-mirror-, Um den zu kopierenden Wert zu finden. Benennen Sie die Klasse um, und das Spiegelfeld wird jedes Mal leer übermittelt.
Parameter:
$fields(Array) – Array von Spiegelfelddefinitions-Arrays.$form(Array) – Die aktuelle Form meta.
// Prefix every mirror field label so they're easy to spot in the editor.
add_filter( 'pb_gforms_referral_tracking_mirror_field_definitions', function( $fields, $form ) {
foreach ( $fields as &$field ) {
$field['label'] = 'Tracking: ' . $field['label'];
}
return $fields;
}, 10, 2 );pb_gforms_referral_tracking_docs_url
Ändern Sie den Link “Weitere Informationen in der Dokumentation” in den Einstellungen. Dies ist hilfreich bei White-Label- oder Agenturinstallationen, die ihre eigene Dokumentation verwalten.
Parameter:
$url(Zeichenkette) – Die Dokumentations-URL. Geben Sie Ihre eigene URL ein, um sie zu ersetzen.
// Point the settings-screen docs link at our own handbook.
add_filter( 'pb_gforms_referral_tracking_docs_url', function( $url ) {
return 'https://example.com/handbook/referral-tracking/';
} );