Salesforce Marketing Cloud Preference Center: Primjer AMPScripta i stranice u oblaku

Kôd stranice s preferencama za marketing Cloud Cloud, integriranim u AMPscript

Istinita priča ... moja je karijera zaista krenula prije više od deset godina kada sam započeo posao savjetnika za integraciju za ExactTarget (danas Salesforce Marketing Cloud). Posao me odveo po cijelom svijetu pomažući tvrtkama u razvoju dubokih integracija s platformom i stekao sam toliko institucionalnog znanja o platformi da sam unaprijeđen u voditelja proizvoda.

Izazovi Product Managera za organizaciju koja je prethodno bila u vlasništvu programera na kraju su me doveli do toga da krenem dalje. Bila je to sjajna organizacija, ali nikad uistinu u vlasništvu proizvod. Dakle, dok su moji vršnjaci u podršci, prodaji i marketingu proizvoda gledali na mene da napravim stvarnu promjenu ... stvarnost je bila da je razvojni tim često implementirao drugačije rješenje, a ja bih to saznao danima prije izlaska.

Jedan od mojih posljednjih projekata bio je rad na internoj platformi za skriptiranje koja bi našim kupcima omogućila da dodaju skriptu u svoje e-adrese. Radio sam s drugim upraviteljem proizvoda i proveli smo mnoštvo istraživanja ... na kraju odlučivši razviti pristup u stilu JQueryja s vlastitim funkcijama, ali uključujući mogućnost prosljeđivanja i trošenja nizova, korištenja JSON-a itd. Bilo bi to poprilično rješenje ... sve dok nije pogodilo razvoj. Početkom ciklusa proizvoda, moja je knjižnica ukinuta, a stariji programer zamijenio ju je s AMP skripta.

Godinama kasnije, Salesforce partner Tvrtka u kojoj sam partner sada radi složene poslovne integracije i svakodnevno se zaokupljam u AMPscriptu - bilo da poboljšavam logiku sadržaja e-pošte ili uvodim Cloud Pages. Naravno, frustracija radnog dana iz dana u dan s AMPscriptom osigurava mi da je još u to vrijeme donesena pogrešna odluka ... moje bi rješenje bilo daleko elegantnije. Osjećam se kao da sam se vratio programiranju TRS-80 u BASIC-u.

Uređivač koji koristite za Cloud Pages ne oprašta. Ne zahvaća jednostavne probleme poput deklariranja varijabli ili sintaksnih pogrešaka s vašim kodom. U stvari, zapravo možete objaviti stranicu koja će jednostavno generirati pogrešku poslužitelja 500. Postoje i dva polja za imenovanje vaših stranica ... ne pitajte me zašto.

Pro-savjet: Ako Cloud Pages nikada ne vraća uzorke podataka kad ćete objaviti i čini se da ih obrađuje zauvijek ..., pojavit će se pogreška. Ako svejedno objavite, vjerojatno ćete morati potpuno izbrisati Cloud stranicu i započeti ispočetka. Pretpostavljam da infrastruktura na kojoj je izgrađena nije dovoljno inteligentna za prepoznavanje promjene koda i samo nastavlja obrađivati ​​predmemorirani kôd.

Osim toga, bit će vam drago znati da mnogi dokumentirani uzorci koda imaju svoje sintaksne pogreške. Yay! To je užasno iskustvo ... ali svejedno ga možete i trebali koristiti jer pruža nevjerojatnu fleksibilnost.

Slijedeća napomena: Postoji nova stranica u oblaku Iskustvo... gdje izgleda kao da su upravo ponovno očistili stranicu i ne pruža nikakve dodatne informacije. Zapravo mi se više sviđa stara verzija za više koraka objavljivanja.

Dok je moje društvo Highbridge izrađuje složena rješenja s omogućenim Ajaxom koja integriraju više sustava i uključuju proširenja podataka s AMPscript, SSJS, Cloud Pages i e-poštom ... Htio sam podijeliti jednostavan primjer kako možete započeti jednostavnim korištenjem AMPscripta za postavljanje upita u vašu Salesforce instancu i povlačenje povratni podaci. U ovom slučaju, jednostavno logičko polje koje zadržava glavnu zastavicu za odjavu pretplate. Možete, naravno, proširiti ovaj kôd tako da izradite cijelu stranicu s postavkama ili centar profila koji možete koristiti.

Generirajte vezu do stranice u oblaku s podacima o pretplatnicima

Ako pregledavate pojedinosti svoje stranice u oblaku, možete dobiti jedinstveni ID stranice za stranicu koju možete uključiti u e-poštu.

ID stranice u oblaku

Sintaksa je sljedeća:

<a href="%%=RedirectTo(CloudPagesURL(361))=%%">View My Preferences</a>

AMPscript za Salesforce podatke putem stranica u oblaku putem proširenja podataka

Prvi korak je izgradnja vašeg AMPscripta za deklariranje varijabli i dohvaćanje podataka iz Salesforcea za upotrebu na vašoj stranici. U ovom primjeru imenuje se moje logičko polje Salesforce koje sadrži true ili false OptedOut:

%%[

/* Declare EVERY variable */
VAR @contactKey,@agent,@referrer,@unsub
VAR @rs,@updateRecord,@checked
 
/* Request your ContactKey from the querystring */
Set @contactKey = Iif(Empty([_subscriberKey]),RequestParameter("contactKey"),[_subscriberKey])

/* Set unsub to false unless it is passed in the querystring */
SET @unsub = Iif(Not Empty(RequestParameter('unsub')),RequestParameter('unsub'),'false')
 
/* If unsub, then update the Salesforce field OptedOut */ 
IF NOT Empty(@unsub) THEN
  SET @updateRecord = UpdateSingleSalesforceObject('contact',@contactKey,'OptedOut', @unsub)
ENDIF

/* Retrieve the Salesforce Contact record */
Set @rs = RetrieveSalesforceObjects('contact', 'FirstName,LastName,OptedOut', 'Id', '=', @contactKey);
 
/* Get the fields from the record */
 IF RowCount(@rs) == 1 then
  var @record, @firstName, @lastName, @optout
  set @record = Row(@rs, 1)
  set @firstName = Field(@record, "FirstName")
  set @lastName = Field(@record, "LastName")
  set @optout = Field(@record, "OptedOut")
ENDIF

/* Build a string for your checkbox to be checked or not
 set @checked = '';
 IF (@optout == 'true') THEN
  set @checked = 'checked'
 ENDIF
 
]%%

Sada možete izraditi svoj HTML i obrazac koji obrađuje zahtjev:

<!DOCTYPE html>
<html>
   <title>Profile Center</title>
   <body>
      <h2>Your Profile:</h2>
      %%[ if RowCount(@rs) == 1 then ]%%
      <ul>
         <li><strong>First Name:</strong> %%=v(@firstName)=%%</li>
         <li><strong>Last Name:</strong> %%=v(@lastName)=%%</li>
         <li><strong>Unsubcribed:</strong> %%=v(@optout)=%%</li>
      </ul>
      <form method="get">
       <div>
         <input type="hidden" id="contactKey" name="contactKey" value="%%=v(@contactKey)=%%">
         <input type="checkbox" id="unsub" name="masterUnsub" value="true" %%=v(@checked)=%%>
         <label for="masterUnsub">Unsubscribe From All</label>
        </div>
       <div>
         <button type="submit">Update</button>
        </div>
     </form>
      %%[ else ]%%
      <p>You don't have a record.</p>
      %%[ endif ]%%
   </body>
</html>

To je to ... sve to spojite i imate stranicu s preferencama koja se ažurira s vašim pretplatničkim zapisom i prosljeđuje zahtjev za ažuriranje logičkog polja (true / false) u Salesforceu. Sada možete graditi prilagođene upite oko tog polja kako biste uvijek osigurali da se kontaktima koji su isključeni ne šalje nikakva e-pošta!

Kako poboljšati stranicu s postavkama ili centar za profile

Naravno, ovo je samo najava onoga što je moguće sa stranicom s preferencijama. Poboljšanja o kojima biste mogli razmisliti:

  • Popunite stvarni tekst iz drugog podatkovnog proširenja kako bi vaš marketinški tim mogao ažurirati sadržaj stranice kad god to želi bez dodirivanja koda.
  • Popunite proširenje podataka popisa publikacija i prođite kroz publikacije kako biste ponudili uključivanje ili isključivanje preferencija uz glavnu odjavu.
  • Popunite podatkovno proširenje razloga da biste shvatili zašto se vaši pretplatnici glavno odjavljuju.
  • Unesite druge podatke o profilu iz zapisa Salesforce kako biste pružili dodatne podatke o profilu.
  • Obradite stranicu Ajaxom tako da je možete bez problema popuniti.
  • Ponudite način registracije tako da vaš korisnik može pristupiti svom centru za osobne profile u bilo kojem trenutku.

Dodatni resursi za AMPscript

Ako tražite dodatnu pomoć za učenje i postavljanje AMPscripta, evo sjajnih resursa:

  • AMPscript vodiče - u organizaciji nekih zaposlenika Salesforcea, ovo je prilično cjelovita baza podataka o sintaksi AMPscript, iako su primjeri vrlo lagani. Da je robusniji, možda bi vrijedilo uložiti.
  • Traphead AMPscript - Salesforce's Trailhead besplatan je resurs za učenje i može vas provesti kroz osnove jezika s oba AMPscripta, SSJS i kako to dvoje mogu komunicirati.
  • Stack Exchange za Salesforce - sjajna internetska zajednica za traženje pomoći s mnoštvom uzoraka AMPscript koda.

Postoji mnoštvo prilika za integraciju vaših Cloud stranica s Salesforceom kako biste pružili vrhunsko korisničko iskustvo. A ako se vaša tvrtka bori, uvijek nam se možete obratiti za pomoć!

Kontakt Highbridge

Što vi mislite?

Ova web stranica koristi Akismet za smanjenje neželjene pošte. Saznajte kako se podaci vašeg komentara obrađuju.