„Salesforce Marketing“ debesų nuostatų centras: „AMPScript“ ir „Cloud Page“ pavyzdys

„AMPscript Salesforce“ integruoto rinkodaros debesies nuostatų puslapio kodas

Tikra istorija ... mano karjera tikrai prasidėjo daugiau nei prieš dešimtmetį, kai pradėjau dirbti „ExactTarget“ (dabar „Salesforce Marketing Cloud“) integracijos konsultantu. Mano darbas privertė mane visame pasaulyje padėti įmonėms plėtoti integraciją su platforma, ir sukaupiau tiek institucinių žinių apie platformą, kad buvau paaukštintas iki produktų vadovo.

Produktų vadybininko iššūkiai organizacijai, kuri anksčiau priklausė kūrėjams, ilgainiui paskatino mane judėti toliau. Tai buvo puiki organizacija, bet aš tikrai niekada Priklausantis produktas. Taigi, kol palaikymo, pardavimo ir produktų rinkodaros bendraamžiai manęs siekė, kad iš tikrųjų pasikeisčiau ... tikrovė buvo ta, kad kūrėjų komanda dažnai įgyvendino kitokį sprendimą ir aš tai sužinojau likus kelioms dienoms iki leidimo.

Vienas iš paskutinių mano projektų buvo darbas su vidine scenarijų platforma, kuri leistų mūsų klientams pridėti scenarijų prie savo el. Laiškų. Dirbau su kitu produktų vadybininku ir atlikome daugybę tyrimų ... galų gale nusprendėme sukurti „JQuery“ stiliaus požiūrį su savo pačių funkcijomis, bet įskaitant galimybę perduoti ir naudoti masyvus, naudoti JSON ir kt. Tai buvo gana sprendimas ... kol pasieks plėtrą. Produktų ciklo pradžioje mano biblioteka buvo atsisakyta ir vyresnysis kūrėjas ją pakeitė AMPscript.

Po daugelio metų „Salesforce“ partneris įmonė, kurioje esu partnerė, dabar vykdo sudėtingas verslo integracijas, ir aš kasdien įsitraukiu į AMPscript - tobulinu el. pašto turinio logiką arba diegiu „Cloud Pages“. Žinoma, kasdienis nusivylimas AMPscript užtikrina, kad tais laikais buvo priimtas neteisingas sprendimas ... mano sprendimas būtų buvęs kur kas elegantiškesnis. Jaučiu, kad vėl grįžau prie TRS-80 programavimo BASIC.

Redaktorius, kurį naudojate „Cloud Pages“, yra negailestingas. Tai nepagauna paprastų problemų, tokių kaip kintamųjų ar sintaksės klaidų deklaravimas su kodu. Tiesą sakant, jūs iš tikrųjų galite paskelbti puslapį, kuris tiesiog sugeneruos 500 serverio klaidų. Taip pat yra du jūsų puslapių pavadinimų laukai ... neklauskite, kodėl.

Pro-Tip: Jei „Cloud Pages“ niekada negrąžina pavyzdinių duomenų, kai ketinate skelbti, ir atrodo, kad jie apdorojami visam laikui ... išmesite klaidą. Jei vis tiek skelbsite, greičiausiai turėsite visiškai ištrinti „Debesies“ puslapį ir pradėti iš naujo. Spėju, kad infrastruktūra, ant kurios ji pastatyta, nėra pakankamai intelektuali, kad identifikuotų kodo pakeitimą ir tiesiog apdoroja talpykloje saugomą kodą.

Be to, jums bus malonu žinoti, kad daugelis dokumentais patvirtintų kodų pavyzdžių turi savo sintaksės klaidų. Valio! Tai siaubinga patirtis ... bet vis tiek galite ir turėtumėte ją naudoti, nes tai suteikia nuostabų lankstumą.

Paraštės užrašas: Yra naujas „Debesų“ puslapis Patirtis... kai atrodo, kad jie ką tik iš naujo nulupo puslapį ir jame nėra jokios papildomos informacijos. Man iš tikrųjų labiau patinka senoji versija, skirta kelių pakopų leidybos sekai.

Nors mano kompanija Highbridge sukuria sudėtingus „Ajax“ įgalintus sprendimus, kurie integruoja kelias sistemas ir įtraukia duomenų plėtinius su „AMPscript“, SSJS, „Cloud Pages“ ir el. paštu. atgaliniai duomenys. Šiuo atveju paprastas loginis laukas, kuriame išlieka pagrindinė atsisakymo žymė. Žinoma, galite išplėsti šį kodą, kad sukurtumėte visą pageidavimų puslapį ar profilio centrą, kurį galite naudoti.

Sukurkite „Cloud-Page Link“ su prenumeratorių duomenimis

Jei peržiūrėsite „Debesies“ puslapio informaciją, galite įsigyti unikalų puslapio ID, kurį galite įtraukti į savo el. Laiškus.

debesies puslapio ID

Sintaksė yra tokia:

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

AMPscript „Salesforce“ duomenims per „Cloud Pages“ per duomenų plėtinius

Pirmasis žingsnis yra jūsų „AMPscript“ sukūrimas, kad būtų deklaruojami kintamieji ir gauti duomenys iš „Salesforce“, kurie bus naudojami jūsų puslapyje. Šiame pavyzdyje pavadintas mano „Salesforce“ loginis laukas, kuriame yra teisinga arba klaidinga „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
 
]%%

Dabar galite sukurti HTML ir formą, kuri apdoroja užklausą:

<!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>

Viskas ... sudėkite viską ir gausite nuostatų puslapį, kuris bus atnaujintas su jūsų abonento įrašu ir pateiks užklausą atnaujinti loginį lauką (true / false) „Salesforce“. Dabar galite kurti pasirinktines užklausas aplink tą lauką, kad visada įsitikintumėte, jog kontaktams, kuriems atsisakėte, nebus siunčiami jokie el. Laiškai!

Kaip patobulinti savo pageidavimų puslapį ar profilių centrą

Žinoma, tai tik pranašumas, kas įmanoma su pageidavimų puslapiu. Patobulinimai, apie kuriuos galbūt norėsite pagalvoti:

  • Surašykite tikrąjį tekstą iš kito duomenų plėtinio, kad jūsų rinkodaros komanda galėtų atnaujinti puslapio turinį bet kada, neliesdami kodo.
  • Suraskite leidinių sąrašo duomenų plėtinį ir peržiūrėkite leidinius, kad galėtumėte pasirinkti arba atsisakyti nuostatų, be pagrindinio abonemento.
  • Suraskite priežasties duomenų plėtinį, kad užfiksuotumėte, kodėl jūsų abonentai atsisako prenumeratos.
  • Norėdami pateikti papildomos informacijos apie profilį, iš „Salesforce“ įrašykite kitą profilio informaciją.
  • Apdorokite puslapį naudodami „Ajax“, kad galėtumėte sklandžiai jį užpildyti.
  • Siūlykite registracijos priemonę, kad jūsų vartotojas galėtų bet kada pasiekti savo asmeninio profilio centrą.

Papildomi šaltiniai, skirti AMPscript

Jei norite gauti papildomos pagalbos mokantis ir diegiant AMPscript, pateikiame keletą puikių šaltinių:

  • „AMPscript Guid“Tai organizuoja kai kurie „Salesforce“ darbuotojai, tai yra gana išsami AMPscript sintaksės duomenų bazė, nors pavyzdžiai yra tikrai nedideli. Jei jis būtų tvirtesnis, galbūt verta investuoti.
  • Trailhead AMPscript - „Salesforce's Trailhead“ yra nemokamas mokymosi šaltinis, leidžiantis sužinoti apie kalbos pagrindus naudojant „AMPscript“, SSJS ir tai, kaip jie gali sąveikauti.
  • „Stack Exchange“, skirta „Salesforce“ - puiki internetinė bendruomenė, reikalaujanti pagalbos dėl daugybės „AMPscript“ kodo pavyzdžių.

Yra daugybė galimybių integruoti „Cloud Pages“ į „Salesforce“, kad būtų teikiama geresnė naudotojo patirtis. Ir jei jūsų įmonė susiduria su sunkumais, visada galite susisiekti su mumis ir padėti!

Kontaktai Highbridge

Ką manote?

Ši svetainė naudoja "Akismet", kad sumažintų šlamštą. Sužinokite, kaip apdorojamas jūsų komentaras.