Dynamically change Personalization Blocks | Community
Skip to main content
July 19, 2019

Dynamically change Personalization Blocks

  • July 19, 2019
  • 3 replies
  • 6398 views

Hello,

We have several variations of an email and wanted to come up with a dynamic solution to change the email content based on each recipient data.

One simple variation is Country, Language, Salutation..etc

Instead of using a big "If..else" section we are thinkking of using a table to store the names of all the different personalization blocks.

Example:

Email1 US, English, Mr, PB_VIEW1

Email1 US, Spanish, Mr, PB_VIEW2

Email1 CA, English, Mr, PB_VIEW3

But when building the email I'm having trouble dynamically changing the PB name.

"<%@ include view=" + w.$PB_NAME + "%" +">"

It looks like this type of functionality is not supported in Adobe. I've also tried extracting the HTML by querying the nms:IncludeView schema but this does not work if there are any javascript variables in the block's.

Are there any other alternate options? Please help.

Thanks

Sree

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

3 replies

Anita_punmiya
Level 5
July 23, 2019

Hi Sree,

It seems that your PB is not correct as per the syntax, it should be something like <% include view = 'abc' %>.

Please check the same .

Regards,
Anita

kapilKochar
July 23, 2019

Hi Sree,

I am not sure i understand your problem statement correctly.

If I want to avoid multiple if else inside Email delivery what i will do is to create one personalization block  and include that block in delivery source code.

Something like below

Creating PB

Using above created PB in Email source code.

Thanks,

Kapil

July 23, 2019

I'm working with Adobe Pro services on this issue. Thank you for your responses.

Jonathon_wodnicki
Community Advisor
Community Advisor
July 23, 2019

Hi,

One solution is to include a personalization block that includes all personalization blocks, then inside each wrap content with a conditional:

<% if (PB_NAME === 'name of this block') { %>

...

<% } %>

Thanks,

-Jon