Підстановка блоків листа згідно даних у профілі контакта

Код Velocity дозволяє створити email, контент якого залежатиме від даних у профілі контакта, наприклад, від статі. Чоловіки побачать добірку товарів для чоловіків, жінки — для жінок, а ті контакти, чия стать не вказана, — загальну добірку.

Налаштування динамічних блоків

1. Розмістіть у шаблоні три структури з контентом для різних сегментів: жіночий одяг, чоловічий одяг та загальна добірка товарів.

Структури для різних сегментів

2. Виділіть структуру з товарами для жінок та відкрийте редактор коду.

Код структури

3. Над першим тегом tr оголосіть змінну, яка використовуватиметься у листі. У нашому випадку це додаткове поле контакта %PERSONAL.GENDER%.

Об'ява змінної

📘

Важливо

Назва змінної у шаблоні повинна збігатися з назвою додаткового поля контакта, яку можна побачити у налаштуваннях облікового запису на вкладці "Додаткові поля". Робота з полями контактів описана в інструкції.

4. Додайте до коду умовний оператор, який відповідає за відображення цієї структури. Використовуйте такий формат:

<!--#if($data.get('parameter name')=='value1')-->

У нашому випадку оператор буде таким:

 <!--#if($data.get('PERSONAL.GENDER')=='F')-->
Velocity-структура

5. Виділіть структуру із товарами для чоловіків. Код цієї структури буде показано у редакторі.

Код другої структури

6. Додайте умовний оператор у код структури над тегом tr. Використовуйте такий формат:

<!--##elseif($data.get('parameter name')=='value2')-->

У нашому випадку оператор буде таким:

 <!--#elseif($data.get('PERSONAL.GENDER')=='M')-->
Умовний оператор другої структури

7. Виділіть структуру із загальною добіркою.

Код третьої структури

8. Додайте умовний оператор у код над тегом tr. Використовуйте такий формат:

<!--#else-->
Умовний оператор третьої структури
  1. Додайте
<!--#end--> 

оператор після тега /tr, що закриває структуру.

Оператор #end

Можна зробити складнішу перевірку на випадок, якщо поля записані по-різному: "M" або "m", "F" та "f":

#if($data.get('PERSONAL.GENDER')=='m') and $data.get('PERSONAL.GENDER')=='M')

Також можна використовувати такий варіант:

#if($data.get('PERSONAL.GENDER').equalsIgnoreCase('m'))

Схожі статті: