Название Описание
abs Получение абсолютного значения (модуля) числа
avatar_url Возвращает URL фотографии пользователя (тип User) либо клиента (тип Customer)
Если фотография не задана или объект имеет другой тип, будет возвращена пустая строка.
batch Преобразование списка в двумерный список с равным количеством элементов
capitalize Получение строки, у которой первая буква преобразуется в верхний регистр
date Преобразование даты в строку в указанном формате
Примеры
order.createdAt|date("d.m.Y") # Дата оформления заказа в формате дд.мм.гггг
"now"|date("d.m.Y H:i") # Текущая дата в формате дд.мм.гггг чч:мм
date_modify Изменение даты (например, увеличение на один день)
default Возвращает переданное значение в случае, если переменная не определена или пустая
escape Экранирование символов в указанном формате
first Получение первого элемента в массиве
format Заменяет символы %s в строке переданными значениями
join Формирует строку из массива путем соединения элементов массива и добавляя разделитель между ними
json_encode Создает JSON из переменной
is_subscribed Возвращает флаг подписки клиента (тип Customer) на указанный канал (email, sms или waba).
Пример
{% if customer|is_subscribed('sms') %}
    Вы подписаны на наши SMS рассылки
{% endif %}
Так же есть возможность проверить подписку на конкретную категорию подписок в канале, передав код категории подписки в качестве 3-его аргумента. Пример
{% if customer|is_subscribed('email', 'news') %}
    Вы подписаны на наши новостные Email рассылки
{% endif %}
keys Возвращает ключи массива
last Получение последнего элемента в массиве
length Получение длины массива либо строки
lower Преобразование всех символов строки в нижний регистр
merge Соединение массива с другим массивом
nl2br Заменяет переносы строки на html-тег <br>
number_format Форматирование числа
raw Получение значения в том виде, в каком они есть (без экранирования)
replace Заменяет одни подстроки на другие
reverse Инвертирует порядок значений в массиве либо символов в строке
round Округляет число до заданной точности
slice Обрезание массива в указанных рамках
sort Сортировка массива
split Разбивает строку на подстроки переданным разделителем
striptags Удаление html-тегов
title Получение строки, в которой каждое слово начинается с большой буквы
trim Удаление пробельных (или других) символов из начала и конца строки
upper Изменяет регистр всех символов строки на верхний
url_encode Кодирует строку как URL-сегмент
ru_currency Форматирует число в денежный формат
Примеры
{{ 12345.12|ru_currency }} # 12 345,12 ₽
{{ 5235.00|ru_currency('number') }} # 5 235
{{ 5235.00|ru_currency('number', false) }} # 5 235,00 - Выведет сумму, не удаляя нули в копейках
{{ 12345.12|ru_currency('words') }} # Двенадцать тысяч триста сорок пять рублей 12 копеек
{{ order.totalSumm|ru_currency }} # Выведет сумму заказа в денежном формате вида 12 345,12 ₽
{% set sum = order.totalSumm|ru_currency('parted') %} # Вернет массив из двух элементов. Элемент с ключом 'integer' содержит целую часть суммы, элемент 'fractional' - дробную
custom_field Выводит значение указанного пользовательского поля из заказа или клиента
Примеры
{{ order|custom_field('transaction_id') }} # Выведет значение пользовательского поля заказа с кодом "transaction_id"
{{ customer|custom_field('birthday') }} # Выведет значение пользовательского поля клиента с кодом "birthday"
international_phone Форматирование строки в телефонный формат с символом + и международным кодом вначале с удалением лишних символов
Примеры
{{ "8 (926) 123-45-67"|international_phone }} # выведет +79261234567
{{ "(926) 123-45-67"|international_phone }} # выведет +79261234567
{{ "7926123-45-67"|international_phone }} # выведет +79261234567
{{ "044 123 45 67"|international_phone('UA') }} # выведет +380441234567
{{ order.phone|international_phone }}
price Форматирует число в денежный формат, подставляя обозначение валюты.
Параметры фильтра:
classes – класс, который будет добавлен к блоку с обозначение валюты
code – код валюты; если не указан, производится попытка определить валюту поля, к которому применен фильтр, в противном случае используется валюта по умолчанию
stripZero – при значение false будут выводиться нули в копейках
price_range Форматирует диапазон чисел в денежный формат, подставляя обозначение валюты
numeric_declension Вывод слова с нужным склонением в соответствии с числом
Примеры
{{ 1|numeric_declension("сум/ка/ки/ок") }} # 1 сумка
{{ 2|numeric_declension("сум/ка/ки/ок") }} # 2 сумки
{{ 15|numeric_declension("сум/ка/ки/ок") }} # 15 сумок
{{ 15|numeric_declension("сум/ка/ки/ок", false) }} # сумок
number_to_words Выводит число прописью
Пример
{{ 12345.12|number_to_words }} # Двенадцать тысяч триста сорок пять
buying_with Возвращает рекомендованные торговые предложения (Offer) из серии «Также покупают». Позволяет получать до 30 торговых предложений (по умолчанию 6).
Примеры
# Получаем и выводим название 10 рекомендованных торговых предложений для товаров в заказе order
{% for item in order|buying_with(10) %}
  {{ item.name }}
{% endfor %}

# Получаем и выводим название 6 рекомендованных торговых предложений для первого товара в заказе order
{% for item in order.orderProducts|first|buying_with(6) %}
  {{ item.name }}
{% endfor %}
Вторым параметром можно передать название сервиса рекомендаций
Если параметр не указан, то используется сервис default, отображающий рекомендации на основе данных системы.
Примеры
# Получаем от сервиса RetailRocket 3 рекомендованных торговых предложения и выводим их названия
{% for item in order|buying_with(3, 'retailrocket') %}
  {{ item.name }}
{% endfor %}
analogs Возвращает торговые предложения (Offer) из серии «Аналоги». Позволяет получать до 30 торговых предложений (по умолчанию 6).
Примеры
# Получаем и выводим название 3 торговых предложения-аналога для товаров в заказе order
{% for item in order|analogs(3) %}
  {{ item.name }}
{% endfor %} # Получаем и выводим название 6 торговых предложений-аналогов для первого товара в заказе order {% for item in order.orderProducts|first|analogs %} {{ item.name }} {% endfor %}
Вторым параметром можно передать название сервиса рекомендаций
Если параметр не указан, то используется сервис default, отображающий рекомендации на основе данных системы.
Примеры
# Получаем от сервиса RetailRocket 3 торговых предложения-аналога и выводим их названия
{% for item in order|analogs(3, 'retailrocket') %}
  {{ item.name }}
{% endfor %}
accompanying deprecated Используйте buying_with(3, 'retailrocket')
recommendations Возвращает рекомендованные торговые предложения (Offer) из серии, указанной первым параметром. Позволяет получать до 30 торговых предложений (по умолчанию 6).
Примеры
# Получаем и выводим название 6 рекомендованных торговых предложений из серии "upsell" для товаров в заказе order
{% for item in order|recommendations('upsell') %}
  {{ item.name }}
{% endfor %}

# Получаем и выводим название 6 рекомендованных торговых предложений из серии "analogs" для первого товара в заказе order
{% for item in order.orderProducts|first|recommendations('analogs') %}
  {{ item.name }}
{% endfor %}
Вторым параметром можно передать количество торговых предложений
Примеры
# Получаем 10 рекомендованных торговых предложения из серии "upsell" и выводим их названия
{% for item in order|recommendations('upsell', 10) %}
  {{ item.name }}
{% endfor %}
quantity Форматирует количество согласно настройкам системы (целое/дробное)
offer_properties Возвращает массив свойств торгового предложения
array(
  code => array(
    name  =>
    code  =>
    value =>
  )
)

{% for orderProduct in order.availableOrderProducts %}
  {% for property in orderProduct.offer|offer_properties %}
    {{ property.code }} - {{ property.name }} - {{ property.value }}
  {% endfor %}
{% endfor %}
contains Если параметром передается массив товаров, то функция проверяет, что заказ содержит хотя бы один из них.
Если параметром передается массив разделов, то функция проверяет, что заказ содержит товары из указанных разделов.
Пример
{% set orderContainsProducts = order|contains(products) %}
looked Если параметром передаются товар(ы), то функция проверяет, что клиент смотрел любой из указанных товаров.
Если параметром передается раздел(ы) товаров, то функция проверяет, что клиент смотрел любой из товаров указанных разделов.
Пример
{% set isLookedProducts = customer|looked(products) %}
looked_products_count Функция возвращает количество просмотренных клиентом товаров
Пример
{% set lookedCount = customer|looked_products_count %}
country Возвращает название страны по ISO коду (ISO 3166-1 alpha-2)
Примеры
{{ 'RU'|country }} # Россия
{{ order.deliveryAddress.country|country }} # Название страны из адреса заказа
local_time Возвращает местное время по номеру телефона, адресу клиента или адресу доставки
Пример
{{ '+375 152 74-07-80'|local_time|date('H:i:s') }} # 15:53:23
{{ order.getDeliveryAddress|local_time|date('H:i:s') }}
{{ order.customer.getAddress|local_time|date('H:i:s') }}
{{ order.getPhone|local_time|date('H:i:s') }}
{{ order.getAnyPhone|local_time|date('H:i:s') }}
{{ order.customer.getAnyPhone|local_time|date('H:i:s') }}
file_url Возвращает URL прикрепленного объекта (вложения) (тип Attachment) или файла (тип File)
Пример
{% for attachment in order.attachments %}
  <a href="{{ attachment|file_url }}">{{ attachment.file.originalName }}</a>
{% endfor %}
qr_code_url Возвращает URL QR-кода заданного размера (в пикселях) для строки
Пример
<img src="{{ '123'|qr_code_url }}">
<img src="{{ '123'|qr_code_url(200) }}">
Если аргумент пустой или не является строкой, то будет возвращена пустая строка.
barcode_code128_url Возвращает URL штрих-кода с типом Code 128 заданного размера (высота в пикселях) для строки
Пример
<img src="{{ '123'|barcode_code128_url }}">
<img src="{{ '123'|barcode_code128_url(100) }}">
Если аргумент пустой или не является строкой, то будет возвращена пустая строка.
barcode_code39_url Возвращает URL штрих-кода с типом Code 39 заданного размера (высота в пикселях) для строки
Пример
<img src="{{ '123'|barcode_code39_url }}">
<img src="{{ '123'|barcode_code39_url(100) }}">
Если аргумент пустой или не является строкой, то будет возвращена пустая строка.