SOLVED

Preference Center Hierarchy & Real-Time Subscription Status

Go to solution
ameliamarie
Level 1

Preference Center Hierarchy & Real-Time Subscription Status

I would like to configure and fine-tune our preference center. Can we have an umbrella, or parent, content category with sub-categories underneath?

 

For example: 

 

Marketing □

* Monthly Newsletter □

* Promotions & Product Updates □

* Announcements □

 

Marketing ☑ 

* Monthly Newsletter ☑

* Promotions & Product Updates ☑

* Announcements ☑

 

If a contact selects "Marketing" they opt-in to all of the subcategories and will display a field on their Info page titled "Marketing Subscribe to All". If they unsubscribe to 1, but leave 2 selected, only those opt-ins would be checked, and the "Marketing Subscribe to All" will be unchecked. 

 

Additionally, if a subscriber visits the preference center, could they see exactly what they are subscribed to in real time? Does anyone have any resources they can share with me that could help me understand how I'd be able to accomplish the above? Thank you!

1 ACCEPTED SOLUTION

Accepted Solutions
SanfordWhiteman
Level 10 - Community Moderator

Re: Preference Center Hierarchy & Real-Time Subscription Status

Yes, such custom form behaviors can be built using JavaScript. Here’s an example:

 

MktoForms2 :: Checkbox families

 

You can see there’s a small config block at the top of the code where you put the “parent” field names and “child” field names. Each is an array of strings.

 

In your case, as in the demo, you’d have only one parent, the Marketing field, but technically that code supports multiple parents. (Imagine a Check-All parent checkbox at both top and bottom of a big stack of checkboxes.)

 


Additionally, if a subscriber visits the preference center, could they see exactly what they are subscribed to in real time? Does anyone have any resources they can share with me that could help me understand how I'd be able to accomplish the above? Thank you!

Marketo’s Form Pre-Fill feature does this out of the box, but only if the person clicks a tracked email link and views the preference center that way. If you want to cover other cases (like the person moving to another page and then back to the pref center) you’ll need my custom JS-based pre-fill code called SimpleDTO, linked in lots of other posts.

View solution in original post

3 REPLIES 3
SanfordWhiteman
Level 10 - Community Moderator

Re: Preference Center Hierarchy & Real-Time Subscription Status

Yes, such custom form behaviors can be built using JavaScript. Here’s an example:

 

MktoForms2 :: Checkbox families

 

You can see there’s a small config block at the top of the code where you put the “parent” field names and “child” field names. Each is an array of strings.

 

In your case, as in the demo, you’d have only one parent, the Marketing field, but technically that code supports multiple parents. (Imagine a Check-All parent checkbox at both top and bottom of a big stack of checkboxes.)

 


Additionally, if a subscriber visits the preference center, could they see exactly what they are subscribed to in real time? Does anyone have any resources they can share with me that could help me understand how I'd be able to accomplish the above? Thank you!

Marketo’s Form Pre-Fill feature does this out of the box, but only if the person clicks a tracked email link and views the preference center that way. If you want to cover other cases (like the person moving to another page and then back to the pref center) you’ll need my custom JS-based pre-fill code called SimpleDTO, linked in lots of other posts.

ameliamarie
Level 1

Re: Preference Center Hierarchy & Real-Time Subscription Status

Thank you! This is so helpful. We will be incorporating more than one "parent" group for subscriptions. The JS you posted looks like it'll perform the job well. 

SanfordWhiteman
Level 10 - Community Moderator

Re: Preference Center Hierarchy & Real-Time Subscription Status


Thank you! This is so helpful. We will be incorporating more than one "parent" group for subscriptions. The JS you posted looks like it'll perform the job well. 

Yes, the code supports unlimited checkbox “families”. You would just add another family to the config like:

 checkboxFamilies.set(["ParentField1"], ["ChildA","ChildB","ChildC"]);
 checkboxFamilies.set(["ParentField2"], ["ChildD","ChildE","ChildF"]);