Hvordan passere og lagre en Salesforce-kontakt-ID med tyngdekraftsskjemaer og WordPress
My Salesforce Partnerbyrå jobber med en bedriftsorganisasjon akkurat nå for å implementere Salesforce, Marketing Cloud, Mobile Cloud og Ad Studio. Alle nettstedene deres er bygget på WordPress med Gravity Forms, et fantastisk form- og datahåndteringsverktøy som har mange muligheter. Når de distribuerer kampanjer via Marketing Cloud i e-post og Mobile Cloud i SMS, konfigurerer vi deres konto og prosesser slik at de alltid sender Salesforce-kontakt-ID til en hvilken som helst destinasjonsside med et skjema.
Ved å overføre kontaktdata kan vi fylle ut hver Gravity Forms innsending med et skjult felt for å fange Salesforce-kontakt-IDen slik at klienten kan eksportere dataene og importere oppdatert informasjon til CRM-en. Senere iterasjoner vil inkludere en automatisk populasjon av dataene, men for øyeblikket vil vi bare sikre at dataene blir lagret riktig.
Det er noen få scenarier vi ønsker å innlemme i denne strategien:
- En bruker klikker på en lenke i en e-post sendt gjennom en e-postkampanje, SMS-kampanje eller kundereise. Denne URL-en har Salesforce-kontakt-ID automatisk vedlagt ved hjelp av en navnesvariabel kontaktnøkkel. Et eksempel kan være:
https://yoursite.com?contactkey=1234567890
- Destinasjonssiden kan ikke ha et skjema, så vi vil lagre Salesforce-kontakt-ID-en i en informasjonskapsel, slik at den kan hentes ut senere i et tyngdekraftsskjema.
- Målsiden kan ha et Gravity Forms-skjema, der vi dynamisk vil fylle ut et skjult felt som har Salesforce-kontakt-ID.
Lagring av en Salesforce-kontakt-ID i en informasjonskapsel på WordPress
For å fange og lagre Salesforce-kontakt-ID i en informasjonskapsel på WordPress, må vi legge til kode på funksjonen.php-siden i vårt aktive tema. Vi skal overskrive eventuelle Salesforce-kontakt-ID-er som allerede finnes i en eksisterende informasjonskapsel, siden mange selskaper rydder opp i poster, fjerner duplikater osv.
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');
Bruk av denne kroken vil sette en informasjonskapsel uansett om det finnes et skjema på siden eller ikke. Vi må også fylle ut skjulte felt for Gravity Forms ved å bruke gform_field_value_ {name} metoden og informasjonskapselen hvis det ikke er noen Salesforce-kontakt-ID, blir sendt i URL: en:
add_filter( 'gform_field_value_contactkey', 'populate_contactkey' );
function populate_utm_campaign( $value ) {
if (!isset($_GET['contactkey'])){
return $_COOKIE['contactkey'];
}
}
Dette er en førsteparts informasjonskapsel, som også er fordelaktig for oss.
Legge til et Salesforce-kontakt-ID skjult felt i tyngdekraftsskjemaer
Innenfor en Gravity Forms skjema, vil du legge til en skjult felt:
Deretter på din skjult felt, vil du sette avansert alternativ for å angi at feltet skal fylles dynamisk med spørringsstrengvariabelen kontaktnøkkel. Hvis dette høres overflødig ut, er det det. I tilfelle en besøkende blokkerer sporing via informasjonskapsler, kan vi fortsatt fylle det skjulte feltet med spørringsstrengvariabelen:
Gravity Forms har massevis av andre alternativer for forhåndsbefolkning som du også kan programmere med på deres nettsted.
Implementeringsoppgraderinger
- Fjern Caching On Gravity Forms Pages - Hvis Gravity Forms er på en hurtigbufret side, fyller du ikke ut feltet ditt dynamisk. Dette er et kjent problem, og heldigvis bygde noen et plugin som sørger for at en side med Gravity Forms-skjema ikke blir bufret, Friske former for tyngdekraften. En bekymring med dette er selvfølgelig hvis du laster inn et skjema på hver side på nettstedet ditt ... det vil i utgangspunktet deaktivere hurtigbufring i hele området.
- Gravity Forms Cookie Plugin - Det er et eldre plugin som ikke er publisert på WordPress-depotet, men kode er tilgjengelig som du kan legge til på nettstedet ditt og den lagrer hvilken som helst spørringsstrengvariabel i en informasjonskapsel. Jeg har ikke testet det, men det ser ut til å behandles.
- Gravity Forms Salesforce-tillegg - Jeg er litt skuffet over at Gravity Forms ikke har en offisiell Salesforce-integrasjon på dette tidspunktet, og det ville være flott å innlemme informasjonskapsler i den implementeringen. Jeg skulle ønske jeg hadde tid til å utvikle dette! De tilbyr en Zapier-tillegg som kan integreres med Salesforce, men jeg har ikke testet det.
Med denne konfigurasjonen lagrer vi nå Salesforce-kontakt-IDen som en informasjonskapsel og fyller ut data fra Gravity Forms med den. Selv om brukeren forlater nettstedet og kommer tilbake i en annen økt, settes informasjonskapselen inn og vil fylle ut Gravity Forms-feltet.