Documentation
Comment puis-je activer le plugin ?
Après avoir acheté le module de suivi des sources de recommandation pour Gravity Forms, installez-le sur votre site WordPress.
Étape 1: Installation
Connectez-vous à votre site WordPress et accédez à Extensions → Ajouter une extension → Téléverser une extension → Installez le fichier zip et activez-le.
Étape 2 : Enregistrer le plugin
Dans le menu de navigation de gauche, allez à Formulaires → Paramètres → Suivi des parrainages.
Saisissez votre clé de licence et activez-la.
Étape 3 : Activer la fonctionnalité
Après avoir activé votre licence, un onglet Général apparaît. Cliquez dessus, cochez la case correspondante. Activer par défaut (“ Activer le suivi des sources de référence sur tous les formulaires par défaut ”), puis cliquez sur Enregistrer les modifications.
Si vous ne cochez pas cette case, le suivi sera incorrect partout. Vous pouvez l'activer formulaire par formulaire dans Paramètres du formulaire → Options du formulaire.
Et voilà ! Avec l'option « Activer par défaut » activée, le suivi des sources de référence est actif sur tous les formulaires existants et sur tous les nouveaux formulaires que vous créez.
Détails des fonctionnalités
Sources qu'il détecte
Nous récupérons l'URL de provenance lorsqu'elle est disponible et l'enregistrons dans l'entrée. Pour les plateformes courantes, nous ajoutons également une étiquette conviviale afin de faciliter la lecture du code source.
Une source est considérée comme « Publicité » uniquement si la visite inclut l'identifiant de clic publicitaire propre à la plateforme (gclid, msclkid, li_fat_id, ttclid, oppref, etc.). Une plateforme connue qui y accède sans cet identifiant est considérée comme « Organique ». Facebook et Instagram font exception : Meta ajoute fbclid à chaque clic, ce qui signifie que ces plateformes sont identifiées comme « Publicité » lorsque fbclid est associé à un paramètre UTM.
Voici la liste des sources qui sont étiquetées lorsqu'elles sont détectées :
- Google: Annonces Google, référencement naturel Google. Trafic Gemini tagué
utm_source=geminiest étiqueté Google Organic ; il n’existe pas d’étiquette Gemini distincte. - Microsoft/Bing : Publicité Bing, Résultats de recherche Bing
- Facebook : Publicités Facebook, Référencement naturel Facebook
- Instagram : Publicités Instagram, Instagram organique
- LinkedIn : Publicités LinkedIn, référencement naturel LinkedIn
- X (Twitter) : X Bio
- Reddit : Publicités Reddit, Reddit Organic
- TikTok : Publicités TikTok, TikTok Organic
- Pinterest : Publicités Pinterest, Résultats de recherche Pinterest
- Snapchat : Publicités Snapchat, Snapchat Organisé
- YouTube : YouTube organique. Un clic sur une publicité YouTube qui génère du trafic.
gclidest enregistré comme une annonce Google, sauf si l'URL est également balisée.utm_source=youtube, qui enregistre les publicités YouTube. - Autres moteurs de recherche : Yahoo, DuckDuckGo, Yandex
- Assistants IA/LLM : Publicités ChatGPT, Référencement naturel ChatGPT, Perplexity, Copilot, Claude, Grok, DeepSeek
- Plateformes de messagerie (suivi des campagnes) : Mailchimp, Constant Contact, Pardot (étiqueté
Salesforce), HubSpot - Direct et Inconnu sont utilisées le cas échéant.
- Coutume Les sources peuvent être définies dans la section « Sources personnalisées » pour le trafic des partenaires, des affiliés et des campagnes.
Paramètres UTM qu'il capture
utm_sourceutm_mediumutm_campaignutm_termutm_contentutm_id
Identifiants de clics capturés
Nous enregistrons chaque identifiant de clic ci-dessous dans le champ Identifiant de clic, et chacun attribue la visite à sa plateforme, sauf indication contraire sur la ligne.
| Plate-forme | Identifiants de clics capturés |
|---|---|
| Google Ads | gclid, gbraid, wbraid |
| Google (autres) | campaignid, gad_campaignid, gad_sourceCapturées et attribuées à Google, ces visites ne sont toutefois pas identifiées comme des publicités à part entière. Elles apparaissent lors d'un véritable clic sur une annonce Google. gclid, ce qui est le cas. |
| Publicités Microsoft (Bing) | msclkid |
| Meta (Facebook / Instagram) | fbclid |
| Publicités LinkedIn | li_fat_id |
| Publicités Reddit | rdt_cid, rd_ad |
| Publicités TikTok | ttclid |
| Publicités Pinterest | pin_cid |
| Publicités Snapchat | snap_cid |
| Publicités ChatGPT | oppref |
| Mailchimp | mc_cid, mc_eid |
| Contact constant | 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 | dclidL'identifiant de clic est enregistré, mais ne correspond à aucune étiquette de source DoubleClick. La visite apparaît comme une annonce inconnue, sauf si un autre élément l'identifie. |
Sources personnalisées
La détection de sources intégrée couvre déjà les principaux moteurs de recherche, les plateformes sociales, les assistants IA et les outils d'emailing. Les sources personnalisées vous permettent d'ajouter vos propres règles. Utilisez-les pour les sites partenaires, les liens d'affiliation, les campagnes nommées, les raccourcisseurs d'URL personnalisés, les liens d'employés et tout autre élément pour lequel l'étiquette “ Parrainage ” par défaut ou une source brute utm_source La valeur n'est pas suffisamment précise.

Vous les trouverez sous Formulaires → Paramètres → Suivi des parrainages dans le Sources personnalisées section. Chaque ligne correspond à une règle.
Comment une règle est évaluée
À chaque visite, l'extension vérifie vos sources personnalisées. avant Détection intégrée. La première règle correspondante est appliquée : le plugin définit la source du visiteur sur celle de cette règle. Étiquette et ignore la détection intégrée pour cette visite. Si aucune correspondance n'est trouvée, la détection intégrée s'exécute normalement (Google, Facebook, Direct, etc.).
Les champs, un par un
- Étiquette – Le texte enregistré comme source de la visite (par exemple.
Partner: Acme,Email: Newsletter,Campaign: Spring Sale). C'est exactement ce qui apparaît dans l'entrée, dans le{pb_ref_source}Utilisez une étiquette de fusion dans l'onglet Rapports et dans tout mappage CRM. Choisissez un élément facilement identifiable sur un écran de saisies chargé. - Terrain de match – Où chercher :
- Hôte référent – le domaine dans le référent du navigateur (par exemple, correspondances)
acme.comquand quelqu'un arrive dehttps://www.acme.com/blog/post). - Source UTM / Support / Campagne / Terme / Contenu – le correspondant
?utm_*=paramètre de l'URL de destination.
- Hôte référent – le domaine dans le référent du navigateur (par exemple, correspondances)
- Type de correspondance – Ce qu’il faut rechercher :
- Contient – la valeur du champ inclut votre valeur de correspondance, quelle que soit sa position à l'intérieur. Insensible à la casse. Idéal pour détecter les variations comme
acme.com,blog.acme.com,partner.acme.comavec une seule règle. - Égal à – la valeur du champ correspond exactement à votre valeur de correspondance (sans tenir compte de la casse). Plus strict, utilisez-le lorsque vous avez besoin d'une correspondance précise.
utm_sourceexactement égal ànewsletter.
- Contient – la valeur du champ inclut votre valeur de correspondance, quelle que soit sa position à l'intérieur. Insensible à la casse. Idéal pour détecter les variations comme
- Valeur de correspondance – Le texte à rechercher. Sans guillemets, sans astérisques, juste la chaîne de caractères littérale.
- Priorité – Un numéro qui contrôle l'ordre. Les courses les plus élevées en premier, donc en cas de chevauchement des règles, celle qui a la priorité la plus élevée prévaut. La valeur par défaut est
10; bosse à20ou50Pour les règles qui doivent prévaloir sur vos valeurs par défaut, consultez5pour les fourre-tout.
Exemples résolus
Étiquetez un site partenaire par référent
| Étiquette | Terrain de match | Type de correspondance | Valeur de correspondance | Priorité |
|---|---|---|---|---|
Partner: Acme | Hôte référent | Contient | acme.com | 20 |
Toute personne arrivant depuis n'importe quel sous-domaine de acme.com est étiqueté Partner: Acme au lieu du générique Referral.
Étiqueter une campagne de newsletter étiquetée
| Étiquette | Terrain de match | Type de correspondance | Valeur de correspondance | Priorité |
|---|---|---|---|---|
Email: Newsletter | Source UTM | Égal à | newsletter | 20 |
Utilisez cette méthode lorsque vous contrôlez l'URL (par exemple, les liens dans votre e-mail hebdomadaire). ?utm_source=newsletter).
Identifiez une campagne payante par son nom de campagne UTM.
| Étiquette | Terrain de match | Type de correspondance | Valeur de correspondance | Priorité |
|---|---|---|---|---|
Campaign: Spring Sale | Campagne UTM | Contient | spring-sale | 15 |
Prises ?utm_campaign=spring-sale-2026, ?utm_campaign=spring-sale-google-ads, et des variantes similaires dans une seule règle.
Désactiver la détection intégrée de Google pour un affilié spécifique
| Étiquette | Terrain de match | Type de correspondance | Valeur de correspondance | Priorité |
|---|---|---|---|---|
Affiliate: Acme via Google Ads | Source UTM | Égal à | acme-gads | 50 |
Une priorité élevée garantit que cette règle l'emporte sur la règle intégrée. utm_source=google → Google Ads Étiquetage à chaque fois que la source étiquetée est disponible.
“ Ajouter des étiquettes biologiques/publicitaires ” avec des sources personnalisées
Les sources intégrées s'affichent toujours comme Google Ads, Facebook Organic, etc. Ajouter des étiquettes Bio/Publicité (Sources personnalisées) La case à cocher (également disponible sous Formulaires → Paramètres → Suivi des parrainages) détermine si vos étiquettes personnalisées reçoivent le même suffixe.
- À carreaux (par défaut) – une règle personnalisée étiquetée
Partner: AcmedevientPartner: Acme Organicsur le trafic de référence etPartner: Acme Adssi la visite comporte un identifiant de clic payant tel que gclid. - Non vérifié – Vos étiquettes personnalisées s'affichent exactement comme vous les avez saisies, et le plugin n'ajoute aucun suffixe.
Choisissez l'option qui convient le mieux à vos rapports. La plupart des équipes souhaitent conserver le suffixe pour pouvoir comparer le trafic payant et le trafic organique des partenaires, mais si vous utilisez le libellé lui-même pour afficher l'identité complète, désactivez-le.
Ajout de règles par programmation
Si vous développez une extension ou souhaitez des règles sous contrôle de version, le pb_gforms_referral_tracking_custom_sources Le filtre accepte le même format que l'interface d'administration et s'y intègre. Le plugin trie les règles des deux interfaces par priorité avant leur évaluation par l'interface utilisateur.
Champs miroirs
Nos champs de suivi sont ajoutés dynamiquement à votre formulaire lors de son affichage. Ils ne font pas partie de la liste des champs enregistrés. Vos formulaires restent ainsi clairs et concis. Cependant, certains modules CRM, d'emailing et de webhooks ne prennent en compte que les champs enregistrés pour la configuration de leurs listes déroulantes de correspondance des champs et ne peuvent donc pas afficher nos champs dynamiques.
Les champs miroirs corrigent ce problème. Sous Formulaires → [votre formulaire] → Paramètres → Options du formulaire, cliquez sur Ajouter des champs miroirs Le plugin ajoute un ensemble parallèle de champs cachés, visibles par l'éditeur, à votre formulaire. Les champs de suivi d'origine restent la source de référence ; le plugin copie leurs valeurs enregistrées dans les champs miroirs lors de la création de l'entrée, afin que votre module complémentaire puisse les associer depuis son menu déroulant de champs habituel. Le bloc « Champs miroirs » n'apparaît que lorsque le suivi des parrainages du formulaire est activé.
Si votre module complémentaire prend en charge l'option de mappage “ Valeur personnalisée ”, vous n'avez pas besoin de champs miroirs. Il vous suffit de mapper directement nos balises de fusion (par exemple : {pb_ref_source}, {pb_ref_utm_source}, {pb_ref_clid}).
Gestion des champs miroirs :
- Ajouter des champs miroirs – crée l'ensemble visible par l'éditeur.
- Ajouter N champs miroir manquants Ce message apparaît lorsqu'un formulaire contient certains champs miroirs, mais pas tous, et indique leur nombre. Cela se produit si un utilisateur supprime des champs manuellement, ou après l'activation de l'attribution au dernier clic, qui ajoute un nouvel ensemble de définitions. L'extension conserve les identifiants des champs restants, ce qui permet aux mappages enregistrés de rester fonctionnels.
- Supprimer 2 champs miroirs en double – N'apparaît que lorsqu'il existe des doublons et indique leur nombre. Conserve la première occurrence de chaque élément.
- Supprimer les champs miroir – Supprime l'ensemble (avec confirmation). Les valeurs déjà enregistrées dans les entrées précédentes restent dans la base de données, mais les modules complémentaires ne pourront plus y accéder via la recherche par ID de champ.
Lorsque l'attribution au dernier clic est activée, les champs miroirs peuvent également inclure l'ensemble des données du dernier clic. Les formulaires qui possédaient déjà l'ensemble des données du premier clic ne les récupéreront pas automatiquement : utilisez Ajouter N champs miroir manquants sur chacun d'eux pour le remplir.
Rapports
Trouver des rapports sous Formulaires → Paramètres → Suivi des parrainages → Rapports. L'onglet visualise toutes les entrées suivies reçues pendant la période sélectionnée, classées par source, dimension UTM et référent. Les entrées soumises avant l'activation de l'extension, celles provenant de formulaires dont le suivi est désactivé, ainsi que les entrées supprimées ou considérées comme du spam ne sont pas comptabilisées. Par conséquent, ces totaux peuvent être inférieurs au nombre d'entrées de votre formulaire Gravity Forms. Les périodes couvrent des journées entières et se terminent à la dernière date complète. UTC Minuit, pour que les comparaisons de périodes restent pertinentes. Selon le décalage horaire de votre site par rapport à UTC, cette limite peut se situer en cours de journée dans votre fuseau horaire local.

Graphiques en un coup d'œil
- Analyse de la source – Graphique en anneau montrant la part des soumissions par source étiquetée (Google Organic, Facebook Ads, vos sources personnalisées, Direct, etc.).
- Entrées au fil du temps – Graphique linéaire du nombre total d'entrées par période. Survolez un point pour afficher une infobulle détaillant ce total par source. Sur les périodes plus longues (90 et 365 jours), les données sont regroupées par mois afin de préserver la lisibilité de l'axe ; sur la période de 30 jours, le graphique n'affiche qu'une étiquette de date sur sept pour éviter la surcharge visuelle.
- Source/Support/Campagne UTM de premier plan – Graphiques à barres horizontales des valeurs ayant le plus d'entrées dans chaque dimension UTM.
- Principaux référents – Graphique à barres horizontales des domaines référents générant le plus de soumissions. L'extension enregistre le trafic direct associé au référent.
Direct, elle apparaît donc ici comme une barre distincte plutôt que comme un domaine.
Filtres
- Formulaire – limiter la portée à un seul formulaire, ou laisser l’option “ Tous les formulaires ” pour une vue d’ensemble du site.
- Période couverte – fenêtres prédéfinies (7, 30, 90 et 365 derniers jours).
- Par rapport à la période précédente – Affiche le total de la période et son pourcentage de variation par rapport à la période précédente équivalente (7 derniers jours vs 7 jours précédents, 30 derniers jours vs 30 jours précédents, etc.), et superpose cette période précédente en pointillés sur le graphique temporel. Les graphiques UTM et de référence ne sont pas comparés.
- Masquer les éléments non attribués – Masque les compartiments « Non défini » et « Inconnu » pour vous permettre de vous concentrer sur les sources attribuées. Les sources directes restent affichées.
Le plugin mémorise vos choix de plage de dates, de période de comparaison et de masquage des éléments non attribués pour chaque utilisateur, vous n'aurez donc pas à les définir à nouveau lors de votre prochaine visite.
Performances et mise en cache
Le plugin calcule des rapports à partir de vos formulaires Gravity Forms et met le résultat en cache, ce qui accélère les chargements répétés. Les nouvelles entrées invalident automatiquement ce cache, avec un délai de 60 secondes pour éviter sa surcharge par les formulaires à fort volume. Les développeurs peuvent ajuster ce délai (ou le désactiver complètement) via les options de configuration. pb_gforms_rt_invalidate_debounce Filtrer. Voir Hooks ci-dessous.
Résumé électronique par courriel
Si vous préférez recevoir les principaux points d'attribution plutôt que d'ouvrir le tableau de bord, activez le résumé par e-mail sous Formulaires → Paramètres → Suivi des parrainages → Rapports par e-mail. Le jour et l'heure que vous choisissez sont évalués dans le fuseau horaire de votre site, mais la période indiquée est mesurée en heures complètes. UTC jours, jusqu'à minuit UTC la dernière nuit complète précédant l'envoi du courriel. Sur les sites éloignés de l'UTC, la période couverte est décalée par rapport à votre fuseau horaire.

Cadence et rythme
- Hebdomadaire – Choisissez le jour de la semaine (du dimanche au samedi) et l’heure d’envoi du courriel.
- Mensuel – choisissez le jour du mois (limité au 28 pour que l'e-mail arrive toujours à destination, même en février) et l'heure.
- Le calendrier d'envoi suit votre fuseau horaire du site (WordPress → Réglages → Général), et la page des réglages affiche la valeur actuelle juste à côté du sélecteur d'heure. La période de rapport est toujours exprimée en jours UTC.
Destinataires
Une adresse e-mail par ligne. Si vous laissez ce champ vide, le résumé utilisera l'adresse par défaut. Courriel de l'administrateur du site au moment de l'envoi. Cela s'avère utile si l'adresse e-mail de l'administrateur change ultérieurement et que vous souhaitez que le récapitulatif soit automatiquement mis à jour.
Le Envoyez-moi un e-mail de test maintenant le bouton délivre le même corps digeste en utilisant votre sauvé paramètres. Deux éléments diffèrent d'un envoi programmé : l'objet est préfixé [TEST], et il ignore Ignorer les résumés vides, Ainsi, un test effectué pendant une période d'inactivité est tout de même enregistré, alors que le récapitulatif officiel serait resté silencieux. Le bouton se désactive automatiquement tant que des modifications ne sont pas enregistrées ; enregistrez d'abord, puis testez.
Options de contenu
- Ignorer les résumés vides – N’envoyez pas du tout l’e-mail si le total du récapitulatif pour la période est nul. Sur un formulaire peu fourni, cela vous évite un récapitulatif vide les semaines calmes. Masquer les éléments non attribués De plus, ce total ignore les entrées « Non défini » et « Inconnu », de sorte qu’une période ne contenant que des entrées non attribuées est considérée comme vide et est ignorée.
- Par rapport à la période précédente – afficher le pourcentage de variation par rapport à la période équivalente précédente en haut de l’e-mail (semaine dernière par rapport à la semaine précédente, mois dernier par rapport au mois précédent, etc.).
- Masquer les éléments non attribués – omettre les valeurs « Non défini » et « Inconnu » des tableaux d’e-mails afin de se concentrer sur les sources attribuées.
Balises de fusion
{pb_ref_source} – valeur stockée dans le champ caché “ Source ” (par défaut “ Inconnu ” lorsque la visite n'a pas pu être classée).
{pb_ref_params} – chaîne complète des paramètres de référence capturés (UTM et autres variables de requête que nous conservons ensemble).
{pb_ref_referrer} – l'URL de provenance de la visite. Il s'agit du référent effectif, et non de la valeur brute du navigateur. Lorsqu'un ID de clic ou un identifiant reconnu est détecté, un clic est effectué. utm_source Si la plateforme est identifiée, le plugin stocke l'URL canonique de la plateforme. Par conséquent, un gclid archives de visites https://www.google.com/ même lorsque le clic provenait d'un e-mail. Enregistrement des visites sur le même domaine et sans référent Direct. Aucune balise de fusion n'expose le référent du navigateur non modifié.
{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} – premier identifiant de clic détecté pour la visite (gclid, fbclid, msclkid et autres identifiants de clic de la plateforme).
{pb_ref_custom_source} – votre propre étiquette pour la visite, rédigée par le pb_gforms_referral_tracking_source_label Filtre (voir Hooks). L'étiquette n'existe que si un rappel est associé à ce filtre. Le plugin stocke la source détectée séparément et ne la modifie jamais.
balises de fusion de dernière minute
Lorsque l'attribution au dernier clic est activée, le plugin ajoute un ensemble parallèle :
{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}
Chacune reproduit son équivalent de première interaction, mais stocke la source la plus récente avant la soumission. {pb_ref_last_custom_source} il a également besoin de pb_gforms_referral_tracking_source_label filtre, identique à son homologue de première interaction.
Envoi des données à Google Analytics
Le suivi des sources de référence ne contacte jamais Google directement. Toutes les informations qu'il recueille restent associées à votre formulaire Gravity Forms. Si vous activez l'option GA4, votre propre balise Google envoie l'événement.
Depuis la version 1.6.0, vous pouvez activer la réception d'un événement GA4. Activez GA4 / Tag Manager dans Formulaires → Paramètres → Suivi des parrainages → Général. Une fois la confirmation effectuée, l'extension envoie un événement personnalisé. pb_referral_submit (Renommez-le dans les mêmes paramètres) avec la source, le référent, l'ID du clic et les paramètres UTM, ainsi que les valeurs de dernière interaction si cette fonctionnalité est activée. Une validation échouée n'entraîne aucun envoi. Les confirmations de redirection et de remerciement nécessitent la version 1.7.1.
Consultez Google Analytics en temps réel ou DebugView pour l'événement. Aucun déclencheur Tag Manager n'est nécessaire. Votre balise Google se charge de l'envoi ; le plugin ne contacte jamais Google.
Facultatif : vous pouvez également transmettre des balises de fusion dans la chaîne de requête de confirmation de redirection (ci-dessous) si vous effectuez déjà une conversion à partir des paramètres de campagne dans l’URL de remerciement. Ceci est distinct de l’événement personnalisé.
Ce que l'événement apporte
Les clés des paramètres correspondent aux noms des balises de fusion. Les valeurs vides sont entièrement exclues de la charge utile, et l'événement se déclenche au maximum une fois par page vue.
| Paramètre | Valeur |
|---|---|
pb_ref_source | Source étiquetée, par exemple. Google Ads |
pb_ref_referrer | URL de référence efficace |
pb_ref_clid | ID du premier clic détecté |
pb_ref_params | Chaîne de paramètres complète capturée |
pb_ref_utm_source, _medium, _campaign, _term, _content, _id | Les six valeurs UTM |
pb_ref_last_* | L'ensemble parallèle de dernière interaction, uniquement lorsque l'attribution de dernière interaction est activée |
pb_ref_form_id | L'identifiant du formulaire Gravity Forms. Présent uniquement sur les confirmations AJAX, lorsque l'identifiant est connu. |
Facultatif : transmettre des valeurs sur l’URL de remerciement
- Ouvrez les confirmations de votre formulaire sous Formulaires → [votre formulaire] → Paramètres → Confirmations, puis modifiez (ou ajoutez) un Réorienter confirmation.
- Dans le URL de redirection Dans ce champ, saisissez l'URL de votre page de remerciement suivie d'une chaîne de requête construite à partir des balises de fusion de suivi :
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 remplit et encode en URL chaque valeur lors de la soumission, de sorte qu'un visiteur arrivant via un clic sur une annonce Google atterrit sur une URL comme celle-ci :
https://yoursite.com/thank-you/?gclid=EAIaIQ...&utm_source=google&utm_medium=cpc&utm_campaign=spring-saleVotre configuration GA4 ou Google Tag Manager sur la page de remerciement interprète ensuite ces paramètres comme pour toute URL de campagne, déclenchant ainsi l'événement de conversion ou de prospect avec la source, la campagne et l'ID de clic enregistrés. Les valeurs non enregistrées pour une visite donnée sont renvoyées vides.
Vous pouvez utiliser ici n'importe quelle balise de fusion de suivi. Voir Balises de fusion pour la liste complète. (Si vous préférez, la Transmettre les données de champ via une chaîne de requête L'option sur la même confirmation de redirection accepte ces mêmes balises de fusion.
Pourquoi utiliser des balises de fusion au lieu de vos propres champs cachés ?
Si vous transmettez déjà des données de campagne à votre page de remerciement via vos propres champs cachés, redirigez la chaîne de requête vers nos balises de fusion. La valeur enregistrée dans l'entrée et celle envoyée à Google Analytics 4 proviendront alors de la même source, ce qui garantit leur cohérence. L'entrée et Google Analytics 4 afficheront toujours la même campagne. De plus, cela signifie un champ de moins à gérer.
Note concernant les identifiants de clic
{pb_ref_clid} contient l'identifiant du premier clic détecté lors de la visite, quelle que soit la plateforme d'origine : gclid pour Google, mais aussi msclkid (Microsoft), fbclid (Meta), et autres. Si vous le mappez spécifiquement à un gclid= Pour les visites non Google, le paramètre `clickID` sera placé dans l'emplacement prévu à cet effet. Si vous souhaitez que l'ID de clic soit inclus uniquement pour les visites Google Ads, ajoutez une logique conditionnelle à la confirmation afin que… gclid= Le paramètre est envoyé uniquement lorsque le Source est Google Ads.
Vérification du bon fonctionnement
Vous pouvez confirmer l'ensemble de la chaîne en quatre étapes :
- Ajoutez des paramètres de test à l'URL de n'importe quelle page de destination (par exemple)
?gclid=TEST123&utm_source=google&utm_medium=cpc), puis soumettez le formulaire. - Sur la page de remerciement, vérifiez la barre d'adresse : vos valeurs doivent figurer dans l'URL.
- Ouvrez les outils de développement de votre navigateur, accédez à Réseau onglet, et filtre pour
collect. La requête adressée à Google doit inclure votregclidetutmvaleurs. - Confirmer la réception dans GA4 Vue de débogage ou Temps réel rapport.
Effectuez le test dans une fenêtre de navigation privée ou en étant déconnecté. Lorsque vous êtes connecté en tant qu'administrateur, l'extension s'exécute volontairement en mode session uniquement, créant des cookies sans date d'expiration ; la fenêtre d'attribution ne peut donc pas être reproduite depuis une session d'administrateur.
Ces quatre étapes vérifient la méthode de chaîne de requête facultative. Pour l'événement personnalisé intégré, soumettez le formulaire, puis sur la page de confirmation ou de remerciement, ouvrez Outils de développement → Réseau et filtrez pour g/collect, et recherchez en=pb_referral_submit (ou le nom de votre événement). Vous pouvez aussi utiliser GA4 DebugView. Si l'événement apparaît dans l'onglet Réseau mais pas dans GA4, cela correspond à votre balise Google. S'il n'apparaît pas dans l'onglet Réseau, le plugin n'a pas fonctionné.
Envoi de l'événement à GA4
Depuis la version 1.6.0, vous pouvez envoyer le code source déjà présent dans l'entrée Gravity Forms à Google Analytics 4 en tant qu'événement personnalisé. Cette option est désactivée par défaut. Votre propre balise Google se charge de l'envoi ; le plugin ne contacte jamais Google directement. Consultez l'événement dans Google Analytics 4 (en temps réel ou en mode débogage). Aucun déclencheur Tag Manager n'est requis.
Aller à Formulaires → Paramètres → Suivi des parrainages → Général. Cocher Envoyer les paramètres capturés à GA4 en tant qu'événement personnalisé lors de la confirmation du formulaire. Laissez le nom de l'événement tel quel. pb_referral_submit Sauf si vous avez une raison de le modifier, cliquez sur Enregistrer les modifications.

Traductions
Ce plugin est prêt pour la traduction et inclut des traductions intégrées pour :
- Arabe (
ar) - Bengali (
bn_BD) - Philippin (
fil) - Allemand (
de_DE) - Espagnol (
es_ES) - Espagnol (
es_MX) - Français (
fr_FR) - Hindi (
hi_IN) - Indonésien (
id_ID) - Italien (
it_IT) - Japonais (
ja) - Portugais (
pt_BR) - Russe (
ru_RU) - Ourdou (
ur) - Chinois simplifié (
zh_CN) - Traditionnel chinois (
zh_HK)
Langue par défaut : anglais (en_US)
Si votre langue ne figure pas dans la liste ci-dessous Traductions Vous pouvez toujours traduire vous-même le plugin ci-dessus. Il est prêt pour la traduction. Utilisez la version gratuite. Plugin Loco Translate pour créer une traduction pour la langue/région de votre site. Vous découvrez Loco Translate ? Voici comment faire. un tutoriel adapté aux débutants.
FAQ
Puis-je exporter les données ?
Oui. Les valeurs de suivi sont enregistrées pour chaque entrée Gravity Forms, elles apparaissent donc dans les exportations d'entrées.
Que capture exactement ce plugin ?
Nous récupérons les champs d'attribution courants et les stockons dans l'entrée Gravity Forms. Cela inclut Paramètres UTM (source, support, campagne, terme, contenu), Identifiants de clic (gclid, msclkid, gbraid/wbraid, etc.), le URL de référence d'origine, et le contexte de la page de destination associée, afin que vous puissiez voir d'où provient chaque prospect.
Puis-je ajouter des sources personnalisées ?
Oui. Ajoutez des règles sous Formulaires → Paramètres → Suivi des parrainages → Sources personnalisées Pour étiqueter les sites partenaires, le trafic d'affiliation, les campagnes de marque et les visites similaires par leur nom. Chaque règle correspond à l'hôte référent ou à un paramètre UTM et applique une étiquette de votre choix. Voir la Sources personnalisées section consacrée au guide champ par champ et aux exemples pratiques.
Mon module complémentaire CRM/e-mail/webhook ne détecte pas les champs de suivi dans son menu déroulant de mappage. Que dois-je faire ?
Nos champs de suivi sont ajoutés dynamiquement à votre formulaire lors du rendu, et non enregistrés dans la liste des champs du formulaire. Par conséquent, les extensions qui construisent leur liste déroulante uniquement à partir de champs enregistrés ne peuvent pas les voir. Vous avez deux options. Si votre extension possède un mappage “ Valeur personnalisée ”, mappez directement nos balises de fusion ({pb_ref_source}, {pb_ref_utm_source}, {pb_ref_clid}, etc.). S'il ne prend en charge qu'une liste déroulante de champ, ouvrez Paramètres du formulaire → Options du formulaire → Champs miroirs et cliquez sur Ajouter des champs miroirs. Cela ajoute des champs cachés visibles par l'éditeur, et l'extension les remplit. Consultez la section « Champs miroirs » pour obtenir des instructions complètes.
Où sont enregistrées les données de parrainage ?
Les données sont enregistrées dans votre base de données WordPress, au sein de vos formulaires Gravity Forms. L'extension ne les envoie jamais directement. Si vous souhaitez utiliser les valeurs enregistrées dans Google Analytics 4, activez l'option correspondante. L'extension reste la source des données ; c'est votre balise Google qui se charge de l'envoi.
S’agit-il d’une attribution au premier contact ou au dernier contact ?
Les deux. Par défaut, l'attribution au premier clic est utilisée, enregistrant le référent initial et les paramètres de la campagne qui ont amené le visiteur sur votre site (dans la fenêtre d'attribution). Une case à cocher permet d'ignorer les visites de retour directes ; l'attribution au dernier clic conserve alors la publicité ou le référent précédent. Les identifiants de clic des visites de retour sont enregistrés uniquement dans l'identifiant de clic (dernier clic). Cela vous donne un ensemble parallèle de {pb_ref_last_*} Fusionnez les balises, les colonnes de liste d'entrées et les colonnes d'exportation CSV. L'onglet Rapports comprend un bouton Premier/Dernier permettant d'afficher chaque graphique différemment.
Combien de temps conserve-t-il les données d'attribution d'un visiteur ?
La période d'attribution est fixée par défaut à 7 jours. Vous pouvez la modifier dans Formulaires → Paramètres → Suivi des références. Si un visiteur soumet un formulaire durant cette période lors de sa première visite suivie, cette entrée conserve les valeurs d'attribution initiales.
Est-ce compatible avec la mise en cache/les CDN ?
En général, oui. Le suivi s'effectue côté client, la plupart des configurations de cache/CDN fonctionnent donc correctement. Si vous utilisez une optimisation poussée des scripts (minification ou report), cochez la case correspondante. Protéger les scripts contre l'optimisation Dans Formulaires → Paramètres → Suivi des parrainages → Avancé, videz ensuite votre cache. Cela marque les scripts du plugin afin qu'ils soient ignorés et les ajoute automatiquement aux listes d'exclusion de WP Rocket, LiteSpeed Cache, SG Optimizer, Autoptimize et Cloudflare Rocket Loader. Si vous utilisez Breeze ou un autre outil de minification non présent dans cette liste, excluez manuellement les deux fichiers ci-dessous et purgez le cache du CDN correspondant après une mise à jour.
Pour tout optimiseur non couvert par ce paramètre, excluez manuellement ces deux fichiers et testez une soumission :
/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
Est-ce compatible avec les formulaires Gravity Forms prenant en charge AJAX ?
Oui. Cela fonctionne avec les formulaires AJAX et les soumissions standard (non-AJAX). Les redirections et les confirmations de remerciement sur les pages de Gravity Forms 2.9 et versions ultérieures nécessitent la version 1.7.1 pour l'événement GA4.
Puis-je suivre plusieurs formulaires ?
Oui. Cela fonctionne avec tous vos formulaires Gravity Forms. Chaque soumission enregistre ses propres valeurs d'attribution pour cette entrée.
Est-ce que cela remplace le suivi des conversions GA4 / Google Ads ?
Non. Il s'agit d'une source de données, et non d'un pixel de conversion. Elle ne déclenche aucun pixel ni ne contacte directement Google. Si vous souhaitez l'attribution dans Google Analytics 4, l'option correspondante dans Google Analytics 4/Tag Manager permet de l'envoyer en tant qu'événement personnalisé via votre propre balise Google lors de la confirmation du formulaire.
Collecte-t-il des données personnelles ?
Par défaut, il capture les données d'attribution (UTM, gclid, URL de référence). Cela fonctionne pas La collecte de données personnelles supplémentaires est activée par défaut. Vos champs de formulaire et les paramètres inclus dans les URL sont gérés par la configuration de votre site et de vos actions marketing.
Est-ce conforme au RGPD/CCPA ?
Si vous avez besoin d'un consentement avant la collecte de données d'attribution, activez le contrôle de consentement optionnel. Ce contrôle conserve les données de première interaction dans le navigateur jusqu'à ce que le visiteur donne son consentement via votre bandeau de cookies (par le biais d'un indicateur de fenêtre, d'un rappel ou d'un événement), puis applique ce consentement.
Est-ce compatible avec un réseau WordPress Multisite ?
TL;DR
- Licence illimitée : Activez le mode réseau une seule fois ; une seule touche suffit pour gérer chaque Paramètres et assistance du sous-site.
- Activé par le réseau : Tous les sous-sites utilisent le suivi des parrainages et reçoivent les mises à jour immédiatement.
- Formule limitée / sans licence de sous-site : Le suivi est inactif sur ce sous-site. Aucun champ de suivi, balise de fusion ou donnée de saisie n'est capturé tant qu'une clé n'y est pas activée ou que le mode réseau n'en envoie pas une.
- L'assistance est soumise à la licence : Les sites couverts par la clé active sont éligibles.
Oui, une fois que chaque sous-site a obtenu sa licence et a été mis en service. L'activation réseau installe l'extension sur l'ensemble du réseau et les mises à jour sont gérées globalement. Cependant, un sous-site doit disposer de sa propre licence activée (ou d'une clé illimitée qui lui est transmise via le mode réseau) avant que l'extension n'ajoute des champs de suivi ou ne collecte des données. Ensuite, activez l'option « Activer par défaut » ou activez le suivi pour chaque formulaire.
Si vous disposez d'une licence illimitée, vous pouvez activer le mode réseau depuis le site principal et déployer cette clé unique sur tous les sous-sites en une seule fois (avec suivi de la progression en temps réel). Ces sous-sites hériteront automatiquement des paramètres et du support liés à la licence.
Référence des paramètres
Tout ce qui se trouve en dessous vit sous Formulaires → Paramètres → Suivi des parrainages, sur l'onglet indiqué dans chaque en-tête.
Données et confidentialité
| Paramètre | Défaut | Ce qu'il fait |
|---|---|---|
| Stockage de secours sans cookies | Off | L'option « Off » conserve l'attribution uniquement dans les cookies. Persistent Pour les visiteurs qui bloquent les cookies, le système utilise le stockage local du navigateur, supprimant ainsi les données antérieures à la période d'attribution. Ce système n'est activé que lorsque les cookies sont indisponibles et, avec le contrôle de consentement activé, le script de suivi n'y écrit qu'après réception du consentement. Le stockage du navigateur est soumis aux mêmes obligations RGPD et ePrivacy que les cookies ; il est donc important de l'inclure dans votre politique de confidentialité. |
| Suppression des données lors de la désinstallation | Off | Désactivé, le plugin conserve toutes ses données lors de sa suppression. Activé, il supprime les paramètres du plugin, la configuration de suivi par formulaire, les données de licence, les événements planifiés et les préférences de rapports par utilisateur. Vos formulaires Gravity Forms et les valeurs de suivi associées restent intacts. |
Avancé
| Paramètre | Défaut | Ce qu'il fait |
|---|---|---|
| Protéger les scripts contre l'optimisation | Off | Cette option permet d'exclure les scripts front-end du plugin afin que les outils de minification et de différé les ignorent, et de les ajouter aux listes d'exclusion de WP Rocket, LiteSpeed Cache, SG Optimizer, Autoptimize et Cloudflare Rocket Loader. Activez cette option si les données de référencement disparaissent après l'activation d'un plugin de cache. |
Porte de consentement
Il n'y a pas de case à cocher pour cela. Le consentement est une option à activer par le développeur : définir consentRequired à travers le pb_gforms_referral_tracking_js_config filtre. Le script de suivi contient les données de première interaction dans sessionStorage jusqu'à réception du consentement, puis le transfert vers un stockage durable.
add_filter( 'pb_gforms_referral_tracking_js_config', function( $config ) {
$config['consentRequired'] = true;
return $config;
} );Signalez le consentement à partir de votre bannière de cookies de l'une de ces trois manières, selon votre préférence :
- Ensemble
window.PBReferralTrackingConsent = true. - Déclenchez l'événement :
window.dispatchEvent( new Event( 'pb-ref-tracking:consent-granted' ) ). - Attribuez un
consentGrantedFonction de rappel qui renvoie vrai une fois le consentement obtenu.
Crochets
Actes
pb_gforms_referral_tracking_loaded
Se déclenche une fois le plugin entièrement initialisé : classes chargées, hooks enregistrés, API prête. Il s’agit du point d’entrée fiable pour les modules complémentaires ou les plugins associés qui étendent le suivi des sources de référence.
Paramètres :
$plugin(Plugin) – L'instance du plugin.
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 );
}
} );Filtres
pb_gforms_referral_tracking_enabled
Permet de désactiver ou non le suivi des parrainages pour un formulaire spécifique. Renvoie « true » pour activer le suivi, « false » pour le désactiver, indépendamment du paramètre par formulaire ou de la valeur par défaut globale.
Paramètres :
$enabled(booléen) – Indique si le suivi est actuellement activé.$form_id(int) – L’identifiant du formulaire actuel.$form(tableau|null) – Le tableau de métadonnées du formulaire, ou null s'il n'est pas disponible.
// 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
Filtrez le tableau des définitions de champs de suivi masqués avant que l'extension ne les injecte dans le formulaire. Utilisez cette fonction pour ajouter, supprimer ou modifier n'importe quel champ de suivi.
Paramètres :
$fields(tableau) – Tableau de tableaux de définition de champs.$form(tableau) – Les métadonnées du formulaire actuel.
// 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
Filtrez le tableau de formulaire complet une fois que l'extension a ajouté tous ses champs de suivi. Vous pouvez ensuite modifier l'objet formulaire final avant son affichage.
Paramètres :
$form(tableau) – Le formulaire avec les champs de suivi déjà ajoutés.$field_definitions(tableau) – Les définitions de champs utilisées.
// 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
Modifiez la table de correspondance des balises de fusion qui définit les balises disponibles et les identifiants de champ auxquels elles correspondent. Utilisez-la pour ajouter des balises de fusion personnalisées ou renommer celles existantes.
Paramètres :
$map(tableau) – Tableau associatif de balise => [ 'label' => chaîne, 'field_id' => chaîne ].$base_id(chaîne) – Le préfixe d'identifiant du champ de base.$constants(Constantes) – L'instance des constantes du plugin.
// 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
Filtrez la valeur brute d'un champ de suivi avant que l'extension ne la formate et ne l'utilise pour remplacer une balise de fusion dans une notification ou une confirmation. C'est ici qu'il faut nettoyer ou transformer une valeur spécifique.
Paramètres :
$value(chaîne) – La valeur brute du champ.$tag(chaîne) – La clé de la balise de fusion (par exemple pb_ref_source).$data(tableau) – Les métadonnées de la balise de fusion (label, field_id).$entry(tableau) – L'entrée actuelle.$form(tableau) – La forme actuelle.
// 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
Filtrez la valeur de la balise de fusion entièrement formatée après que Gravity Forms a exécuté son propre pipeline de formatage (échappement, encodage URL, etc.).
Paramètres :
$formatted(chaîne) – La chaîne de sortie formatée.$tag(chaîne) – La clé de la balise de fusion.$data(tableau) – Les métadonnées de la balise de fusion.$entry(tableau) – L'entrée actuelle.$form(tableau) – La forme actuelle.$url_encode(booléen)$esc_html(booléen)$nl2br(booléen)$format(chaîne)
// 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
Modifiez la valeur par défaut utilisée lorsqu'un champ de suivi est vide au moment de la soumission. La valeur par défaut est “ Inconnu ”.
Paramètres :
$default(chaîne) – La valeur par défaut actuelle (“ Inconnu ”).$key(chaîne) – Clé de contexte : source, référent ou front_end.
// 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
Remplacez l'intégralité de l'objet de configuration JavaScript front-end avant que le plugin ne le transmette au script de suivi. Votre fonction de rappel contrôle les paramètres des cookies, les cartes sources (utmSourceMap et utmReferrerMap), des sources connues et les paidClickIds liste qui détermine quels paramètres de requête prouvent qu'un clic est payant.
Paramètres :
$config(tableau) – Le tableau de configuration JS complet.
Les touches, avec leurs valeurs par défaut :
| Clé | Défaut | Commandes |
|---|---|---|
cookieExpiry | 7 | Fenêtre d'attribution en jours. |
cookiePrefix | pb-ref-tracking- | Préfixe sur chaque clé stockée. |
cookiePath | / | Chemin des cookies. |
cookieSameSite | Lax | Attribut SameSite. |
defaultValue | Unknown | Valeur écrite alors qu'aucune capture n'a été effectuée. |
appendOrganicPaid | true | Que les étiquettes personnalisées reçoivent ou non le suffixe Bio/Publicité. |
paidClickIds | 10 identifiants | Paramètres de requête qui prouvent un clic payant et qui génèrent ainsi une étiquette « Annonce ». |
utmSourceMap / utmReferrerMap | voir ci-dessous | Les chaînes de caractères simples correspondent à une carte de chaîne de caractères. utm_source associer une valeur à une étiquette et à une URL de référence canonique. |
customSources | [] | Règles de source personnalisées. Privilégiez le filtre dédié ci-dessus. |
sessionOnlyMode | false | Cookies de session sans date d'expiration. Activés de force pour les administrateurs connectés. |
fallbackStorage | none | local active le repli sans cookies. |
consentRequired / consentGranted | false / null | Le formulaire de consentement. Voir la section Paramètres. |
enableLastTouch | false | Capturez également l'ensemble des dernières touches. |
enableDataLayerPush | false | Émettre l'événement GA4. |
dataLayerEventName | pb_referral_submit | Nom de cet événement. |
trackingFieldBaseId | '' | Identifiant du champ de base pour les champs injectés. |
debug | false | Activez cette option pour consigner les décisions de capture dans la console du navigateur. C'est le moyen le plus rapide de comprendre pourquoi une visite a été étiquetée de cette manière. |
sourcePatterns est volontairement absent de cette liste. Ses entrées nécessitent JavaScript actif. RegExp Les objets, et tout ce qu'un rappel PHP renvoie, arrive sous forme de chaîne de caractères une fois la configuration encodée en JSON, ce qui provoque une erreur lors de la mise en correspondance. Pour étendre les modèles de référent, assignez à window.PBReferralTrackingConfig à partir de JavaScript avant l'exécution du script de suivi.
// 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
Injectez par programmation des règles de source personnalisées qui s'exécutent en parallèle des règles configurées dans l'interface d'administration. Le plugin fusionne les règles issues de ce filtre avec les règles d'interface enregistrées, trie l'ensemble combiné par priorité et le transmet au frontend.
Paramètres :
$sources(tableau) – Tableau vide. Renvoie un tableau de tableaux de règles à ajouter.
Chaque règle doit comporter : une étiquette, un champ de correspondance (référent, source_utm, support_utm, campagne_utm, terme_utm, contenu_utm), un type de correspondance (contient ou est égal à), une valeur de correspondance et, éventuellement, une priorité (par défaut 10, les plus élevées s’exécutent en premier).
Les règles ajoutées via ce filtre peuvent également utiliser referrer_url Le champ `matchField` effectue une correspondance avec l'URL complète du référent, incluant son chemin et sa requête, et non pas seulement l'hôte. Cette fonctionnalité n'est pas disponible dans l'interface d'administration ; elle est donc accessible uniquement ici.
// 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
Saisissez votre propre libellé dans un champ Source personnalisée distinct lors de la soumission. La source détectée reste inchangée ; ainsi, l’entrée conserve à la fois le résultat du plugin et votre réponse. Ceci est utile lorsqu’un CRM nécessite un libellé simplifié ou interne et que vous souhaitez conserver la source réelle. Depuis la version 1.6.0.
L'ajout d'une fonction de rappel active cette fonctionnalité. Sans fonction de rappel, les champs « Source personnalisée » et leurs balises de fusion n'existent pas. Ajoutez-en une et l'extension ajoutera un champ « Source personnalisée » à vos formulaires, ainsi qu'un champ « Source personnalisée (Dernier clic) » lorsque l'attribution au dernier clic est activée. Retournez une chaîne vide pour laisser le champ vide lors d'une visite donnée ; le champ ne sera pas renseigné par défaut.
Paramètres :
$label(chaîne) – L’étiquette de la source détectée, par exempleGoogle Ads.$key(chaîne) – Quel élément tactile est étiqueté :sourceoulast_source.$form(tableau) – L’objet formulaire actuel.
// 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
Contrôlez si les ressources front-end du plugin (bibliothèque de cookies et script de suivi) sont chargées. Retournez « false » pour désactiver complètement leur chargement sur une page ou sous certaines conditions.
Paramètres :
$enqueue(booléen) – Indique si les ressources doivent être mises en file d'attente. Valeur par défaut : vrai.
// 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
Remplacez le CSS intégré qui masque les champs de suivi sur le site et dans l'aperçu de l'éditeur de blocs. Le CSS par défaut masque les champs de suivi, l'ancien traqueur Google Ads et les conteneurs de champs miroirs. .gform_wrapper .gfield avec les préfixes de classe pb-ref-tracking-, pb-gads-tracking- et pb-ref-mirror-.
Paramètres :
$css(chaîne) – La chaîne CSS en ligne.
// 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
Ajustez (ou désactivez) le délai d'invalidation du cache des rapports. Après chaque nouvelle entrée, le cache des rapports est reconstruit au maximum une fois par tranche de 60 secondes afin d'éviter sa surcharge par les formulaires à volume élevé. La valeur par défaut est de 60 secondes ; renvoyez 0 pour une invalidation immédiate à chaque entrée.
Paramètres :
$seconds(int) – La fenêtre d'anti-rebond en secondes. Par défaut : 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
Personnalisez les définitions des champs miroirs persistants créés lorsque des champs miroirs sont ajoutés à un formulaire. label c'est la partie que vous pouvez changer sans risque.
Quitter cssClass seul. Lors de la soumission, le plugin récupère la clé de suivi canonique, tout ce qui suit pb-ref-mirror-, pour trouver la valeur à copier. Renommez la classe et le champ miroir sera systématiquement vide.
Paramètres :
$fields(tableau) – Tableau de tableaux de définition de champs miroirs.$form(tableau) – Les métadonnées du formulaire actuel.
// 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
Modifiez le lien “ En savoir plus dans la documentation ” affiché dans les paramètres. Utile pour les installations en marque blanche ou réalisées par des agences qui gèrent leur propre documentation.
Paramètres :
$url(chaîne) – L'URL de la documentation. Veuillez renvoyer la vôtre pour la remplacer.
// 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/';
} );