Fermer

novembre 24, 2020

Comment transmettre et stocker un identifiant de contact Salesforce avec Gravity Forms et WordPress »Zone Martech


Mon agence partenaire Salesforce travaille actuellement avec une organisation d'entreprise pour mettre en œuvre Salesforce, Marketing Cloud, Mobile Cloud et Ad Studio. Leurs sites Web sont tous construits sur WordPress avec Gravity Forms un fantastique outil de gestion des formulaires et des données qui a une tonne de capacités. Lorsqu'ils déploient des campagnes via Marketing Cloud dans les e-mails et Mobile Cloud dans les SMS, nous configurons leur compte et leurs processus pour toujours transmettre l'ID de contact Salesforce à n'importe quelle page de destination avec un formulaire.

En transmettant les données de contact, nous pouvons remplir chaque soumission Gravity Forms avec un champ masqué pour capturer l'ID de contact Salesforce afin que le client puisse exporter les données et importer les informations mises à jour dans son CRM. Les itérations ultérieures incluront une population automatique des données, mais pour le moment, nous voulons simplement nous assurer que les données sont correctement enregistrées.

Il y a quelques scénarios que nous voulons incorporer dans cette stratégie:

  • Un utilisateur clique sur un lien dans un e-mail envoyé via une campagne e-mail, une campagne SMS ou un parcours client. L'ID de contact Salesforce est automatiquement ajouté à cette URL à l'aide d'une variable de chaîne de requête nommée contactkey . Un exemple pourrait être:
 https://yoursite.com?contactkey=1234567890 
  • La page de destination peut ne pas avoir de formulaire dessus, nous voulons donc stocker l'ID de contact Salesforce dans un cookie afin qu'il puisse être extraite ultérieurement dans un formulaire Gravity.
  • La ​​page de destination peut contenir un formulaire Gravity Forms, dans lequel nous souhaitons renseigner dynamiquement un champ masqué contenant l'ID de contact Salesforce.

Stockage d'un ID de contact Salesforce dans un cookie dans WordPress

Pour capturer et stocker l'ID de contact Salesforce dans un cookie dans WordPress, nous devons ajouter du code à notre page functions.php dans notre thème actif. Nous allons également remplacer tout ID de contact Salesforce qui peut déjà se trouver dans un cookie existant, car de nombreuses entreprises nettoient les enregistrements, suppriment les doublons, etc.:

 function set_SalesforceID_cookie () {
 if (isset ($ _ GET ['contactkey'])) {
  $ parameterSalesforceID = $ _GET ['contactkey'];
  setcookie ('contactkey', $ parameterSalesforceID, time () + 1209600, COOKIEPATH, COOKIE_DOMAIN, false);
 }
}
add_action ('init', 'set_SalesforceID_cookie'); 

L'utilisation de ce hook définira un cookie indépendamment du fait qu'un formulaire existe ou non sur la page. Nous devons également renseigner tout champ masqué Gravity Forms à l'aide de la méthode gform_field_value_ {name} et le cookie s'il n'y a pas d'ID de contact Salesforce est passé dans l'URL:

 add_filter ('gform_field_value_contactkey', 'populate_contactkey' );
function populate_utm_campaign ($ value) {
 if (! isset ($ _ GET ['contactkey'])) {
   return $ _COOKIE ['contactkey'];
 }
} 

Il s'agit également d'un cookie de première partie ce qui nous est avantageux.

Ajout d'un champ caché d'ID de contact Salesforce dans les formes gravitationnelles

dans un formes gravitationnelles vous voudrez ajouter un champ caché :

 gravity forms add hidden field

Ensuite, sur votre champ caché vous voudrez définir l'option Avancé pour que votre champ soit rempli dynamiquement avec votre variable de chaîne de requête contactkey . Si cela semble redondant… ça l'est. Dans le cas où un visiteur bloque le suivi via les cookies, nous pouvons toujours remplir le champ caché avec la variable de chaîne de requête:

 gravity forms hidden field populate querystring

Gravity Forms a une tonne de autres options de pré-remplissage que vous pouvez également incorporer par programme sur leur site.

Mises à niveau d'implémentation

  • Suppression de la mise en cache sur les pages Gravity Forms – si Gravity Forms est sur une page mise en cache, vous ne serez pas dynamiquement remplissez votre champ. C'est un problème connu et, heureusement, quelqu'un a construit un plugin qui garantit que toute page avec un formulaire Gravity Forms n'est pas mise en cache, Fresh Forms for Gravity . Bien sûr, un problème à ce sujet est que si vous chargez un formulaire sur chaque page de votre site … cela désactivera essentiellement la mise en cache sur tout le site.
  • Gravity Forms Cookie Plugin – Il existe un plugin plus ancien qui n'est pas publié sur le référentiel WordPress mais le code est disponible que vous pouvez ajouter à votre site et il stocke toute variable de chaîne de requête dans un cookie. Je ne l'ai pas testé, mais il semble qu'il soit en cours de traitement.
  • Supplément Salesforce Gravity Forms – Je suis un peu déçu que Gravity Forms ne dispose pas d'une intégration Salesforce officielle à ce stade, et ce serait bien d'incorporer des cookies dans cette implémentation. J'aurais aimé avoir le temps de développer ça! Ils offrent un module complémentaire Zapier qui peut s'intégrer à Salesforce mais je ne l'ai pas testé.

Avec cette configuration, nous stockons maintenant l'ID de contact Salesforce sous forme de cookie et remplissons tout Gravity Forms des données avec. Même si l'utilisateur quitte le site et revient dans une autre session, le cookie est défini et pré-remplira le champ Gravity Forms.




Source link