Κέντρο Προτιμήσεων Cloud Salesforce Marketing: Παράδειγμα AMPScript και Cloud Page

AMPscript Salesforce-Integrated Marketing Cloud Preference Code Code

Αληθινή ιστορία… η καριέρα μου πραγματικά ξεκίνησε πριν από μια δεκαετία όταν ξεκίνησα μια θέση ως Σύμβουλος Ένταξης για την ExactTarget (τώρα Salesforce Marketing Cloud). Η δουλειά μου με πήρε σε όλο τον κόσμο βοηθώντας εταιρείες να αναπτύξουν βαθιές ενοποιήσεις με την πλατφόρμα και δημιούργησα τόση θεσμική γνώση της πλατφόρμας που προωθήθηκα στο Product Manager.

Οι προκλήσεις του Product Manager για έναν οργανισμό που προηγουμένως ανήκε σε προγραμματιστές με οδήγησαν τελικά να προχωρήσω. Ήταν μια μεγάλη οργάνωση, αλλά ποτέ δεν αληθινά ανήκει το προϊόν. Έτσι, ενώ οι συνεργάτες μου στην υποστήριξη, τις πωλήσεις και το μάρκετινγκ προϊόντων μου κοίταξαν να κάνω μια πραγματική αλλαγή… η πραγματικότητα ήταν ότι η ομάδα ανάπτυξης εφάρμοζε συχνά μια διαφορετική λύση και θα έβρισκα ημέρες πριν από την κυκλοφορία.

Ένα από τα τελευταία μου έργα δούλευε σε μια εσωτερική πλατφόρμα scripting που θα επέτρεπε στους πελάτες μας να προσθέσουν script στα email τους. Δούλεψα με έναν άλλο υπεύθυνο προϊόντων και κάναμε έναν τόνο έρευνας… τελικά αποφάσισα να αναπτύξουμε μια προσέγγιση τύπου JQuery με τις δικές μας λειτουργίες, αλλά συμπεριλαμβανομένης της δυνατότητας να περάσω και να καταναλώσω πίνακες, να χρησιμοποιήσω το JSON κ.λπ. Θα ήταν αρκετά λύση… μέχρι να χτυπήσει την ανάπτυξη. Νωρίς στον κύκλο προϊόντων, η βιβλιοθήκη μου καταργήθηκε και ένας ανώτερος προγραμματιστής το αντικατέστησε με AMPscript.

Χρόνια αργότερα, το Συνεργάτης Salesforce Η εταιρεία στην οποία είμαι συνεργάτης κάνει τώρα περίπλοκες, εταιρικές ενοποιήσεις και βρίσκομαι καθημερινά στρατευμένος στο AMPscript - είτε βελτιώνω τη λογική περιεχομένου email είτε αναπτύσσοντας το Cloud Pages. Φυσικά, η απογοήτευση της καθημερινής εργασίας με το AMPscript με διασφαλίζει ότι η λανθασμένη απόφαση είχε ληφθεί εκείνες τις μέρες… η λύση μου θα ήταν πολύ πιο κομψή. Νιώθω σαν να επιστρέφω στον προγραμματισμό ενός TRS-80 στο BASIC.

Το πρόγραμμα επεξεργασίας που χρησιμοποιείτε για το Cloud Pages είναι ασυναγώνιστο. Δεν αντιμετωπίζει απλά προβλήματα, όπως δήλωση μεταβλητών ή σφάλματα σύνταξης με τον κώδικά σας. Στην πραγματικότητα, μπορείτε πραγματικά να δημοσιεύσετε μια σελίδα που θα δημιουργήσει απλώς ένα σφάλμα διακομιστή 500. Υπάρχουν επίσης δύο πεδία ονομάτων για τις σελίδες σας… μην με ρωτάτε γιατί.

Pro-tip: Εάν ένα Cloud Pages δεν επιστρέφει ποτέ δείγματα δεδομένων όταν πρόκειται να δημοσιεύσετε και φαίνεται ότι επεξεργάζεται για πάντα ... πρόκειται να ρίξετε ένα σφάλμα. Εάν δημοσιεύσετε ούτως ή άλλως, πιθανότατα θα πρέπει να διαγράψετε εντελώς το Cloud Page και να ξεκινήσετε ξανά. Υποθέτω ότι η υποδομή στην οποία είναι χτισμένη δεν είναι αρκετά έξυπνη για να αναγνωρίσει μια αλλαγή κώδικα και συνεχίζει να επεξεργάζεται τον προσωρινά αποθηκευμένο κώδικα.

Εκτός από αυτό, θα χαρείτε να γνωρίζετε πολλά από τα τεκμηριωμένα δείγματα κώδικα έχουν τα δικά τους σφάλματα σύνταξης. Ναι! Είναι μια φρικτή εμπειρία… αλλά μπορείτε ακόμα και πρέπει να τη χρησιμοποιήσετε, επειδή παρέχει κάποια εκπληκτική ευελιξία.

Υποσημείωση: Υπάρχει μια νέα σελίδα Cloud Εμπειρία… Όπου μοιάζει να ξαναγύρισε τη σελίδα και δεν παρέχει επιπλέον πληροφορίες. Μου αρέσει πραγματικά η παλιά έκδοση καλύτερα για τη σειρά εκδόσεων πολλαπλών βημάτων.

Ενώ η εταιρεία μου Highbridge δημιουργεί σύνθετες λύσεις με δυνατότητα Ajax που ενσωματώνουν πολλαπλά συστήματα και ενσωματώνουν επεκτάσεις δεδομένων με AMPscript, SSJS, Cloud Pages και email… Θα ήθελα να μοιραστώ ένα απλό παράδειγμα για το πώς μπορείτε να ξεκινήσετε απλά χρησιμοποιώντας το AMPscript για να ρωτήσετε την παρουσία σας Salesforce και να τραβήξετε πίσω δεδομένα. Σε αυτήν την περίπτωση, ένα απλό boolean πεδίο που διατηρεί μια κύρια σημαία απεγγραφής. Φυσικά, μπορείτε να επεκτείνετε αυτόν τον κώδικα για να δημιουργήσετε μια ολόκληρη σελίδα προτιμήσεων ή ένα κέντρο προφίλ που μπορείτε να χρησιμοποιήσετε.

Δημιουργία συνδέσμου Cloud-Page με δεδομένα συνδρομητών

Εάν προβάλετε τις λεπτομέρειες της σελίδας Cloud, μπορείτε να αποκτήσετε το μοναδικό αναγνωριστικό σελίδας για τη σελίδα που μπορείτε να συμπεριλάβετε στα μηνύματα ηλεκτρονικού ταχυδρομείου σας.

αναγνωριστικό σελίδας cloud

Η σύνταξη έχει ως εξής:

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

AMPscript για δεδομένα Salesforce μέσω Cloud Pages μέσω επεκτάσεων δεδομένων

Το πρώτο βήμα είναι να δημιουργήσετε το AMPscript για να δηλώσετε μεταβλητές και να ανακτήσετε τα δεδομένα από το Salesforce για χρήση στη σελίδα σας. Σε αυτό το παράδειγμα, ονομάζεται το boolean πεδίο Salesforce που περιέχει το αληθές ή το ψευδές 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
 
]%%

Τώρα μπορείτε να δημιουργήσετε το HTML και τη φόρμα που επεξεργάζεται το αίτημα:

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

Αυτό είναι… βάλτε τα όλα μαζί και έχετε μια σελίδα προτιμήσεων που ενημερώνεται με την εγγραφή των συνδρομητών σας και διαβιβάζει ένα αίτημα για ενημέρωση ενός boolean πεδίου (true / false) στο Salesforce. Τώρα μπορείτε να δημιουργήσετε προσαρμοσμένα ερωτήματα γύρω από αυτό το πεδίο για να βεβαιωθείτε ότι οι επαφές που έχουν εξαιρεθεί δεν αποστέλλονται email!

Πώς να βελτιώσετε τη σελίδα προτιμήσεων ή το κέντρο προφίλ

Φυσικά, αυτό είναι απλώς ένα teaser για ό, τι είναι δυνατό με μια σελίδα προτιμήσεων. Βελτιώσεις που ίσως θέλετε να σκεφτείτε:

  • Συμπληρώστε το πραγματικό κείμενο από άλλη επέκταση δεδομένων, έτσι ώστε η ομάδα μάρκετινγκ να μπορεί να ενημερώσει το περιεχόμενο της σελίδας όποτε το επιθυμεί, χωρίς να αγγίξει τον κώδικα.
  • Συμπληρώστε μια επέκταση δεδομένων λίστας δημοσίευσης και περάστε τις δημοσιεύσεις για να προσφέρετε opt-in ή opt-out στις προτιμήσεις εκτός από έναν κύριο κατάργηση εγγραφής
  • Συμπληρώστε μια επέκταση δεδομένων λόγου για να καταλάβετε γιατί οι συνδρομητές σας είναι κύριοι κατάργηση εγγραφής.
  • Συμπληρώστε άλλες πληροφορίες προφίλ από την εγγραφή Salesforce για να παράσχετε πρόσθετες πληροφορίες προφίλ.
  • Επεξεργαστείτε τη σελίδα με το Ajax, ώστε να μπορείτε να την συμπληρώσετε απρόσκοπτα.
  • Προσφέρετε ένα μέσο εγγραφής έτσι ώστε ο χρήστης σας να έχει πρόσβαση στο προσωπικό προφίλ του ανά πάσα στιγμή.

Πρόσθετοι πόροι για AMPscript

Εάν αναζητάτε κάποια πρόσθετη βοήθεια για να μάθετε και να αναπτύξετε το AMPscript, δείτε μερικές εξαιρετικές πηγές:

  • Οδηγίες AMPscriptΗλεκτρονικά οργανωμένη από ορισμένους υπαλλήλους του Salesforce, αυτή είναι μια αρκετά ολοκληρωμένη βάση δεδομένων της σύνταξης AMPscript, αν και τα παραδείγματα είναι πραγματικά ελαφριά. Αν ήταν πιο ανθεκτικό, ίσως αξίζει την επένδυση.
  • Σενάριο AMP Trailhead - Το Trailhead του Salesforce είναι ένας δωρεάν πόρος μάθησης και μπορεί να σας καθοδηγήσει στα βασικά της γλώσσας με το AMPscript, το SSJS και τον τρόπο με τον οποίο μπορούν να αλληλεπιδράσουν οι δύο.
  • Ανταλλαγή στοίβας για Salesforce - μια εξαιρετική διαδικτυακή κοινότητα για να ζητήσετε βοήθεια με έναν τόνο δειγμάτων κώδικα AMP.

Υπάρχει μια μεγάλη ευκαιρία να ενσωματώσετε το Cloud Pages σας στο Salesforce για να παρέχετε μια ανώτερη εμπειρία χρήστη. Και αν η εταιρεία σας αγωνίζεται, μπορείτε πάντα να επικοινωνήσετε μαζί μας για βοήθεια!

Επικοινωνία Highbridge

Ποια είναι η γνώμη σας;

Αυτός ο ιστότοπος χρησιμοποιεί το Akismet για να μειώσει το spam. Μάθετε πώς επεξεργάζονται τα δεδομένα των σχολίων σας.