Hi All,
Do any of you know of best practice advice on how to deal with personalisation in different non-English languages.
I know that German has some needs around salutations (It is not as simple as Mr & Ms aparently) and other European languages such as Czech and Bulgarian change the way a person's first name or last name is written when used in a salutation.
Examples - My name in Bulgarian is 'Любен', but in a solutation it would be 'Любене'. And two examples from Czech - 'Bohonek' becomes 'Bohoňku' and 'Svoboda' becomes 'Svobodo'.
We do email marketing in a lot of different EMEA languages (Czech, Danish, Dutch, Finnish, Hungarian, German, Norwegian, Polish, Slovakian, Spanish, Swedish and Turkish with more coming on stream this year) and thus I wanted to see if there is a good centralised source of info on how to deal with linguistic issues such as this.
Thanks in advance for any help you can give.
Luben
Hi Luben Solev,
I have had similar pains. I don't think there is a library or anywhere you can get a clear set of answers. The only way I have found to deal with these is through creating velocity scripts ( http://developers.marketo.com/email-scripting/ ).
I have pasted an example of the German salutation velocity script I created. It is definitely not nice code and doesn't stick to the DRY (don't repeat yourself) best practices, but it works. Sanford Whiteman would probably know best about this topic.
I create a velocity script token at the program level. All of the double ## are comments to explain what is happening.
I call mine {{my.EmailSalutation}} and then just reference it at the very top of the email.
##check if the Salutation is Herr
#if(${lead.Salutation} == "Herr")
##if the Salutation is Herr, use the salutation 'Sehr geehrter Herr'
#set($greeting = "Sehr geehrter Herr ${lead.LastName},")
##check is the Salutation is Frau
#elseif(${lead.Salutation} == "Frau")
##if female, use the salutation 'Sehr geehrte Frau'
#set($greeting = "Sehr geehrte Frau ${lead.LastName},")
##check if the Salutation is Herr Dr.
#elseif(${lead.Salutation} == "Herr Dr.")
##if the Salutation is Herr Dr., use the salutation 'Sehr geehrter Herr'
#set($greeting = "Sehr geehrter Herr Dr. ${lead.LastName},")
##check if the Salutation is Frau Dr.
#elseif(${lead.Salutation} == "Frau Dr.")
##if Frau Dr., use the salutation 'Sehr geehrte Frau Dr.'
#set($greeting = "Sehr geehrte Frau Dr. ${lead.LastName},")
##check if the Salutation is Herr Prof.
#elseif(${lead.Salutation} == "Herr Prof.")
##if Herr Prof., use the salutation 'Sehr geehrter Herr Prof.'
#set($greeting = "Sehr geehrter Herr Prof. ${lead.LastName},")
##check if the Salutation is Frau Prof.
#elseif(${lead.Salutation} == "Frau Prof.")
##if Frau Prof., use the salutation 'Sehr geehrte Frau Prof.'
#set($greeting = "Sehr geehrte Frau Prof. ${lead.LastName},")
##check if the Salutation is Herr Prof. Dr.
#elseif(${lead.Salutation} == "Herr Prof. Dr.")
##if Herr Prof. Dr., use the salutation 'Sehr geehrter Herr Prof. Dr.'
#set($greeting = "Sehr geehrter Herr Prof. Dr. ${lead.LastName},")
##check if the Salutation is Frau Prof. Dr.
#elseif(${lead.Salutation} == "Frau Prof. Dr.")
##if Frau Prof. Dr., use the salutation 'Sehr geehrte Frau Prof. Dr.'
#set($greeting = "Sehr geehrte Frau Prof. Dr. ${lead.LastName},")
#else
##otherwise, use this Salutation
#set($greeting = "Sehr geehrte(r) Frau/Herr ${lead.LastName},")
#end
##print the greeting and some content
${greeting}
Thanks a lot Gerard. That's very useful code on the DE personalisation conundrum. Much appreciated!
Have a look to the Apache Velocity Engine - User Guide
Thanks a lot Karina. I will look at that guide in some detail.