Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

SOLVED

Preference Center

Avatar

Level 1

What's the best way to build an email preference center in ACS?

 

In the image below you'll see I'm trying to create a page with checkboxes, fields like email frequency, etc. Is this doable via a landing page template (see current template in image) or do you have to custom code it elsewhere and import it into adobe?

 

I've searched help docs and community questions, but so far I haven't seen any way to build anything like what's in the goal state image so any advice would be greatly appreciated.  Thanks in advance!

 

 

 Preference Center Wireframe.png

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Level 6

Yes it is possible to build a preference center, but you have to fool the landing page a bit.  Create a service call ____Preference_Center.  In the landing page select options check preload visitor data, reconcile by email, filter email, update strategy "Update", then click specific service and enter your preference center service you created above.  Then copy the html into your landing page.  That should get you started.

 

<form name="Preference" class="form" method="POST" autocomplete="off" data-nl-format="datetime">
<div><label class="stacked required" id="HtmlPage_htmlPage.email" style="text-align: left;">Email</label> <input class="stacked nl-dce-done" type="email" id="email" name="email" data-nl-ismandatory="true" data-nl-label="Email" data-nl-xpath="/context/profile/email" data-nl-type="string" readonly="readonly" data-nl-bindto="xpath" data-nl-checkboxbehavior="subscription" style="position: static; width: 448px; height: 25px; left: 0px; top: 0px; border-color: #555555; border-width: 0px; border-style: none; background-color: #fafafa; background-position: left top; background-repeat: repeat;" /></div>
<!-- List1 -->
<p> </p>
<div style="position: static; width: 448px; height: 21px; left: 0px; top: 0px; border-color: #999999; border-width: 0px; border-style: none; background-color: rgba(0, 0, 0, 0); background-position: left top; background-repeat: repeat;" data-nl-format="datetime"><input type="checkbox" id="ch1" class="nl-dce-done" data-nl-checkboxbehavior="subscription" data-nl-bindto="service" onclick="Box1Function()" data-nl-servicename="SVC*****" data-nl-servicelabel="Your Service Name" /> <span style="color: #0d0c0c;"><span style="color: #0d0c0c;">Newsletter<br style="font-size: 17px;" /></span></span></div>
<!-- List2 -->
<div style="position: static; width: 448px; height: 21px; left: 0px; top: 0px; border-color: #999999; border-width: 0px; border-style: none; background-color: rgba(0, 0, 0, 0); background-position: left top; background-repeat: repeat;" data-nl-format="datetime"><input type="checkbox" id="ch2" class="nl-dce-done" data-nl-checkboxbehavior="subscription" data-nl-bindto="service" onclick="Box2Function()" data-nl-servicename="SVC***" data-nl-servicelabel="Your Service Name 2" /> <span style="color: #0d0c0c;"><span style="color: #0d0c0c;">Blog<br style="font-size: 17px;" /></span></span></div>
<!-- List# -->
<div class="button"><a href="#" data-nl-type="action" data-nl-format="datetime" style="position: static; width: 100px; height: 50px; left: 0px; top: 0px; border-color: #ffffff; border-width: 0px; border-style: none; background-color: rgba(0, 0, 0, 0); background-position: left top; background-repeat: repeat;" data-nl-action="next">Update Preferences</a></div>

View solution in original post

3 Replies

Avatar

Correct answer by
Level 6

Yes it is possible to build a preference center, but you have to fool the landing page a bit.  Create a service call ____Preference_Center.  In the landing page select options check preload visitor data, reconcile by email, filter email, update strategy "Update", then click specific service and enter your preference center service you created above.  Then copy the html into your landing page.  That should get you started.

 

<form name="Preference" class="form" method="POST" autocomplete="off" data-nl-format="datetime">
<div><label class="stacked required" id="HtmlPage_htmlPage.email" style="text-align: left;">Email</label> <input class="stacked nl-dce-done" type="email" id="email" name="email" data-nl-ismandatory="true" data-nl-label="Email" data-nl-xpath="/context/profile/email" data-nl-type="string" readonly="readonly" data-nl-bindto="xpath" data-nl-checkboxbehavior="subscription" style="position: static; width: 448px; height: 25px; left: 0px; top: 0px; border-color: #555555; border-width: 0px; border-style: none; background-color: #fafafa; background-position: left top; background-repeat: repeat;" /></div>
<!-- List1 -->
<p> </p>
<div style="position: static; width: 448px; height: 21px; left: 0px; top: 0px; border-color: #999999; border-width: 0px; border-style: none; background-color: rgba(0, 0, 0, 0); background-position: left top; background-repeat: repeat;" data-nl-format="datetime"><input type="checkbox" id="ch1" class="nl-dce-done" data-nl-checkboxbehavior="subscription" data-nl-bindto="service" onclick="Box1Function()" data-nl-servicename="SVC*****" data-nl-servicelabel="Your Service Name" /> <span style="color: #0d0c0c;"><span style="color: #0d0c0c;">Newsletter<br style="font-size: 17px;" /></span></span></div>
<!-- List2 -->
<div style="position: static; width: 448px; height: 21px; left: 0px; top: 0px; border-color: #999999; border-width: 0px; border-style: none; background-color: rgba(0, 0, 0, 0); background-position: left top; background-repeat: repeat;" data-nl-format="datetime"><input type="checkbox" id="ch2" class="nl-dce-done" data-nl-checkboxbehavior="subscription" data-nl-bindto="service" onclick="Box2Function()" data-nl-servicename="SVC***" data-nl-servicelabel="Your Service Name 2" /> <span style="color: #0d0c0c;"><span style="color: #0d0c0c;">Blog<br style="font-size: 17px;" /></span></span></div>
<!-- List# -->
<div class="button"><a href="#" data-nl-type="action" data-nl-format="datetime" style="position: static; width: 100px; height: 50px; left: 0px; top: 0px; border-color: #ffffff; border-width: 0px; border-style: none; background-color: rgba(0, 0, 0, 0); background-position: left top; background-repeat: repeat;" data-nl-action="next">Update Preferences</a></div>

Avatar

Level 6

Hi Julie,

 

It's certainly possible to build a preference center which allows individuals to directly edit their personal information, and any subscriptions.

 

Below is an example of the preference center I built within ACS. Happy to share more details or discuss if you think it would be useful.

 

pref-cent-ss.jpg

Avatar

Administrator

Hi @juliemarks,

Were you able to resolve this query with any of the given solutions or do you still need more help here? Do let us know.

Thanks!