В NotiSend поддерживается базовый синтаксис Liquid, который автоматически адаптирует содержание письма в зависимости от параметров получателя. Это делает рассылку персонализированной и релевантной для каждого клиента, увеличивая вовлечённость.

Почему динамический контент важен?

С помощью динамического контента можно:

  • Использовать персонализированные обращения (например, по имени);
  • Выводить бонусный баланс или статус программы лояльности;
  • Менять текст в зависимости от возраста, интересов или других параметров;
  • Создавать вариативный контент в зависимости от данных получателя.

Таким образом, письмо становится не массовой рассылкой, а индивидуальным обращением к каждому клиенту.

Важно: В конструкторе писем NotiSend у каждого элемента в разделе «Свойства» есть пункт «Условия отображения». По умолчанию условия «Отсутствуют», но вы можете включить условную логику напрямую в визуальном интерфейсе. 

Если вы используете сторонний сервис для создания шаблона и импортируете готовый HTML в NotiSend, эта статья поможет вам разместить динамические конструкции внутри макета.

Аналогичный подход применим и в том случае, если вы хотите вставить условные операторы в HTML-блок в самом конструкторе писем NotiSend или в HTM-редакторе.

Примеры использования динамического контента в email-письмах

Общий вид конструкции с уникальным контентом для получателя в Liquid:

{% if [‘возраст’] > 30 %}
  Здесь будет контент для людей старше 30
{% endif %}

Где каждая часть означает:

  • [‘название_параметра’] – параметр, заранее заданный в группе получателя (если он на русском языке, обязательно используйте кавычки и скобки [‘...’]).
  • Оператор сравнения – любой из перечисленных ниже в разделе «Операторы сравнения».
  • Компонент сравнения – произвольное число или строка, с которой сравнивают значение параметра.

Пример 1: Отображение бонусного баланса

Задача: отправить рассылку о состоянии бонусного баланса покупателям интернет-магазина.

  1. Подготовка данных
    Создайте новую группу получателей с параметром [‘бонусы’]. Загрузите базу получателей с бонусными баллами.
  2. Подготовка макета письма для рассылки
    Создайте новую рассылку. В разделе «Дизайн и содержимое» выберите ваш HTML-шаблон и загрузите его. В том месте, где необходимо вывести информацию о бонусах, используйте следующую конструкцию на Liquid:
<div>Здравствуйте, покупатель!</div>

{% if ['бонусы'] > 0 %}
  <div>У вас {{ ['бонусы'] }} бонусных баллов. Воспользуйтесь ими до конца года.</div>
{% elsif ['бонусы'] == 0 %}
  <div>На вашем счёте отсутствуют бонусные баллы.</div>
{% elsif ['бонусы'] == null or ['бонусы'] == '' %}
  <div>Пожалуйста, напишите нам, чтобы активировать бонусную карту.</div>
{% endif %}

<div>До встречи! Ваш магазин.</div>
  • Если значение параметра [‘бонусы’] больше 0, пользователь увидит сообщение о наличии баллов и призыв к использованию.
  • Иначе отобразится вариант для нулевых (или отсутствующих) баллов.

Результат для получателей

  • Если есть бонусы (например, 1000)
 Здравствуйте, покупатель!
У вас 1000 бонусных баллов. Воспользуйтесь ими до конца года.
До встречи! Ваш магазин.
  • Если бонусы отсутствуют (равны 0)
 Здравствуйте, покупатель!
На вашем счёте отсутствуют бонусные баллы.
До встречи! Ваш магазин.

Важно:

  1. Количество условий не ограничено, но не может быть менее одного.
  2. Сегмент с контентом, не соответствующим ни одному из условий (часть else), можно опустить.
  3. Конструкцию можно использовать в любом месте отправляемого макета: в теме письма, текстовых блоках, названиях кнопок и т.д.

Пример 2: Содержание в зависимости от времени регистрации и количества заказов

Этот пример показывает, как можно предлагать клиентам разные бонусы в зависимости от их истории взаимодействия с брендом.

{% if [‘месяцев_с_регистрации’] >= 6 and [‘количество_заказов’] >= 3 %}
  <p>Вы с нами уже {{ [‘месяцев_с_регистрации’] }} месяцев и сделали {{ [‘количество_заказов’] }} заказов. Специально для вас повышенный кешбэк 10%!</p>

{% elsif [‘месяцев_с_регистрации’] >= 1 %}
  <p>Спасибо, что вы с нами уже {{ [‘месяцев_с_регистрации’] }} месяцев!</p>

{% else %}
  <p>Добро пожаловать в наш магазин! При первом заказе получите бесплатную доставку.</p>

{% endif %}
  • Если покупатель зарегистрирован 6 месяцев и совершил 3 или более заказов, ему предлагается повышенный кешбэк.
  • Если прошло минимум 1 месяц, показывается более общая благодарность.
  • Для только что зарегистрированных пользователей выводится приветственное сообщение.

Пример 3: Логические операторы

Ниже пример, в котором учитываются сразу три параметра: возраст, пол и интерес. Обратите внимание, что в самих текстах мы не указываем конкретные цифры возраста.

{% if ([‘возраст’] >= 30) and ([‘пол’] == 'мужской') and ([‘интерес’] == 'спорт') %}
  <p>Отличный выбор спортивной экипировки и аксессуаров специально для вас!</p>

{% elsif ([‘возраст’] >= 30) and ([‘пол’] == 'мужской') and ([‘интерес’] == 'авто') %}
  <p>Новые автомобильные гаджеты и аксессуары могут вас заинтересовать.</p>

{% elsif ([‘возраст’] >= 30) and ([‘пол’] == 'женский') and ([‘интерес’] == 'косметика') %}
  <p>Обратите внимание на новую линейку косметических средств с натуральными ингредиентами.</p>

{% elsif ([‘возраст’] >= 30) and ([‘пол’] == 'женский') and ([‘интерес’] == 'мода') %}
  <p>У нас появились эксклюзивные модные коллекции, которые, возможно, вам подойдут.</p>

{% else %}
  <p>У нас много интересных предложений, которые понравятся разным категориям клиентов!</p>

{% endif %}
  • Логические операторы and и == позволяют проверять сразу несколько условий.
  • Если ни одно из условий не выполнено, срабатывает блок else и отображается универсальный вариант.

Операторы сравнения

Чтобы корректно применять динамические элементы, важно понимать операторы сравнения:

  • > — больше
  • — меньше
  • >= — больше или равно
  • <= — меньше или равно
  • == — равно
  • != — не равно
  • contains — проверяет, содержит ли строка указанную подстроку
  • or — логическое ИЛИ
  • and — логическое И

Важные нюансы

  • Тестирование динамического контента
    Перед запуском рассылки проверьте, как отображается контент у разных групп пользователей. В NotiSend можно отправить тестовое письмо или использовать предпросмотр.
  • Отсутствие вложенности параметров
    В Liquid невозможно подставлять один параметр внутрь другого.
  • Использование русских названий параметров
    Если параметры на русском языке, их нужно указывать в квадратных скобках и кавычках: ['параметр'].

Использование динамического контента в HTML-шаблонах NotiSend позволяет сделать рассылку персонализированной, повысить вовлечённость получателей и увеличить конверсию писем. Попробуйте внедрить персонализацию уже в следующей рассылке и расскажите нам о своём опыте!

Для более детального изучения возможностей синтаксиса Liquid вы можете обратиться к официальной документации:
Liquid Documentation