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 karijera je zaista krenula prije više od deset godina kada sam započeo posao savjetnika za integraciju za ExactTarget (sada Salesforce Marketing Cloud). Posao me odveo po cijelom svijetu pomažući kompanijama u razvoju dubokih integracija s platformom i stekao sam toliko institucionalnog znanja o platformi da sam unaprijeđen u menadžera 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 nikada istinski 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 primjenjivao 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 skripte u svoje e-adrese. Radio sam s drugim menadžerom proizvoda i obavili 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 konzumiranja nizova, korištenja JSON-a itd. rješenje ... sve dok nije pogodilo razvoj. Početkom ciklusa proizvoda, moja je biblioteka ukinuta i stariji programer ju je zamijenio AMPscript.

Godinama kasnije, Salesforce partner Kompanija u kojoj sam partner sada radi složene poslovne integracije i svakodnevno se zaokupljam u AMPscriptu - ili poboljšavajući logiku sadržaja e-pošte ili izbacujući Cloud Pages. Naravno, frustracija radnog dana iz dana u dan sa AMPscript-om 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 je neumoljiv. Ne zahvaća jednostavne probleme poput deklariranja varijabli ili sintaksnih grešaka s vašim kodom. U stvari, zapravo možete objaviti stranicu koja će jednostavno generirati grešku poslužitelja 500. Postoje i dva polja za imenovanje vaših stranica ... ne pitajte me zašto.

Pro-tip: Ako Cloud Pages nikad ne vraća uzorke podataka kada ćete objaviti i čini se da se obrađuje zauvijek ..., pojavit će se pogreška. Ako ipak objavite, vjerojatno ćete morati potpuno izbrisati Cloud stranicu i početi ispočetka. Pretpostavljam da infrastruktura na kojoj je izgrađena nije dovoljno inteligentna da identificira promjenu koda i samo nastavlja obrađivati ​​predmemorirani kôd.

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

Strana napomena: Postoji nova stranica u oblaku iskustvo… Gdje izgleda da su upravo prekomponovali stranicu i ne pruža nikakve dodatne informacije. Zapravo mi se više sviđa stara verzija za objavljivanje u više koraka.

Dok je moja kompanija Highbridge izrađuje složena rješenja s omogućenim Ajaxom koja integriraju više sistema i uključuju ekstenzije 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 instalaciju 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 preferencama ili centar profila koji možete koristiti.

Generirajte vezu do stranice u oblaku s podacima o pretplatnicima

Ako pregledate detalje svoje Cloud stranice, možete dobiti jedinstveni ID stranice za stranicu koju možete uključiti u svoje e-adrese.

ID stranice u oblaku

Sintaksa je sljedeća:

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

AMPscript za Salesforce podatke putem Cloud Pages-a putem proširenja podataka

Prvi korak je izgradnja vašeg AMPscripta za deklariranje varijabli i preuzimanje 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 sa preferencama koja se ažurira s vašim pretplatničkim zapisom i prosljeđuje zahtjev za ažuriranje logičkog polja (tačno / netačno) 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 sa preferencama ili Centar za profile

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

  • Popunite stvarni tekst iz drugog produžetka podataka 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 ekstenziju podataka razloga da biste shvatili zašto se vaši pretplatnici glavno odjavljuju.
  • Unesite druge informacije o profilu iz Salesforce zapisa kako biste pružili dodatne informacije o profilu.
  • Obradite stranicu pomoću Ajaxa tako da je možete bez problema popuniti.
  • Ponudite način registracije tako da vaš korisnik može u svakom trenutku pristupiti svom centru za lične profile.

Dodatni resursi za AMPscript

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

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

Postoji mnoštvo prilika za integraciju vaših Cloud stranica sa Salesforceom kako biste pružili vrhunsko korisničko iskustvo. A ako se vaša kompanija muči, uvijek nas možete kontaktirati kako bismo vam pomogli!

kontakt Highbridge

Šta ti misliš?

Ova stranica koristi Akismet kako bi smanjila neželjenu poštu. Saznajte kako se podaci vašeg komentara obrađuju.