Формирование таблиц на основе элементов массива
Формирование таблиц на основе элементов массива — это одна из возможностей платформы, которой можно воспользоваться при передаче динамического контента в сообщении. Мы можем взять массив линейных объектов из базы данных, а затем распределить элементы этого массива в таблице так, как того требует ситуация.
Данная возможность доступна при передаче контента любым способом: API-контент, JSON-контент, контент из SQL базы данных.
Чтобы создать таблицу на о снове элементов массива, в окне HTML версия письма кликните: Вставить переменную → Функции вывода → Колонки из массива.
Шаблон кода появится в окне редактора кода. С ним вы можете работать.
Обратите внимание на следующую строчку кода:
{for $i $row = columns(array["item1" "item2" "item3" "item4" "item5 hidden"] 2 0)}
Здесь array
— это массив, из которого мы берем контент для таблицы. Каждый элемент массива ("item1"
, "item2"
, "item3"
и т. д.) содержит контент для определенной ячейки таблицы.
Цифра "2" — это количество колонок, которые будут в таблице. Цифра "0" — это количество элементов, которые не будут добавлены в таблицу (отсчет начинается с первого элемента массива).
Таким образом, в сгенерированной таблице все элементы массива будут распределены в 2 колонки и ни один из них не будет пропущен.
Пример реализации
Давайте рассмотрим один из случаев применения данной опции.
Предположим, на сайте авиакомпании динамически меняется контент для каждого пользователя в зависимости от истории его полетов. Каждый пользователь видит на своем экране 5 предложений о рейсах, которые ему, возможно, будут интересны. Эти предложения показаны в интерфейсе как 5 блоков (item
). В каждом из них есть информация о городах, датах и ценах за билет. Мы хотим не только отобразить эти блоки, но и вставить между ними отдельный блок, где предложим пользователю самому выбрать город полета (offer
):
|
Наши действия:
- Создаем массив, куда складываем информацию о всех пяти предложениях (
"item1"
,"item2"
,"item3"
,"item4"
,"item5"
). - Отдельно добавляем первый элемент массива (
item1
). - Добавляем блок с предложением (
offer
). - Добавляем оставшиеся элементы массива, распределяя их на 2 колонки. Первый элемент не будет добавлен, потому что мы указали, что хотим пропустить один элемент.
Формирование таблиц на основе элементов массива — гибкий механизм, который позволяет в любое время легко изменить отображение вашего сообщения для пользователя.