Bytehand + Мойсклад
  • Интеграция Bytehand и МойСклад
  • Первые шаги
    • Установка
    • Выбор тарифа
    • Заключение договора
    • Настройки приложения
  • Использование
    • Шаблоны
      • Виды шаблонов
      • Создание шаблона
      • Остановка шаблона
    • Язык шаблонов Liquid
      • Массивы
      • Теги
        • Теги проверки условия
        • Теги итераций
        • Теги переменных
      • Фильтры
        • Строковые фильтры
        • Математические фильтры
        • Фильтры массивов
        • Дополнительные фильтры
      • Операторы логики
    • Примеры шаблонов
      • На создание заказа покупателя
      • На изменение заказа
  • Поддержка
    • Поддержка
    • Справочники Liquid
    • Вопросы про Bytehand
Powered by GitBook
On this page
  • Что такое язык шаблонов?
  • Синтаксис Liquid
  • Массивы
  • Теги
  • Фильтры

Was this helpful?

  1. Использование

Язык шаблонов Liquid

PreviousОстановка шаблонаNextМассивы

Last updated 4 years ago

Was this helpful?

Liquid - это язык шаблонов, созданный Shopify, который используется многими различными программными проектами и компаниями.

Основная задача Liquid - вставка динамического контента в шаблонах.

Что такое язык шаблонов?

Пользователи приложения могут использовать язык шаблонов для создания текста SMS, который объединяет статический контент, и динамический контент, который меняется от документа к документу.

Пример:

Спасибо за заказ {{ name }} на сумму {{ sum }}.

Синтаксис Liquid

Как и в традиционных языках программирования, Liquid имеет синтаксис, взаимодействует с переменными и включает такие конструкции, как вывод и логика. Благодаря удобочитаемому синтаксису конструкции Liquid легко распознаются и отличаются от обычного текста двумя наборами разделителей: разделителями с двойными фигурными скобками {{ }}, которые обозначают выходные данные, и разделителями с фигурными скобками в процентах {% %}, которые обозначают логику.

Существует три основных особенности кода Liquid:

Массивы

Массивы выводят фрагменты данных из документов МоегоСклада. В шаблоне темы объекты заключены в двойные фигурные скобки {{ }}и выглядят так:

Спасибо за заказ, {{ agent.name }} 

В приведенном выше примере мы выводим переменную name (название) из массива agent (контрагент).

{{ agent.name }} - одна из множества переменных Liquid, который можно применить в вашем шаблоне. Полный список объектов и переменных в них, доступный для того или иного документа МойСклад можно найти в справочнике "Язык Шаблонов" на странице создания или редактирования шаблонов.

Когда происходит событие шаблона (например, у вас настроен шаблон на отправку SMS при создании заказа), приложение заменяет объекты Liquid в тексте SMS на данные из документа. Таким образом объект {{ agent.name }} заменится в тексте SMS на название контрагента.

Спасибо за заказ, ООО "РОГА И КОПЫТА"

Теги

Теги Liquid используются для создания логики внутри шаблонов. Теги {% %} и текст внутри не отображаются при генерации текста SMS, но позволяют назначать переменные и создавать условия или циклы.

Например, вы можете использовать теги Liquid для отображения различного содержимого в тексте SMS в зависимости от того, выполняется ли условие:

{% if applicable == true %}
	Документ проведен
{% else %}
	Документ не проведен
{% endif %}

Тэги Liquid можно категоризировать следующим образом:

Фильтры

Фильтры используются для изменения вывода чисел, строк, объектов и переменных. Они помещаются в выходной тег {{ }}и обозначаются символом |.

Простой пример - capitalizeстроковый фильтр:

{{ 'hello, world!' | capitalize }}
{{ agent.name | capitalize }}

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

Hello, World
ИП Иванов Иван Иванович

Несколько фильтров могут быть использованы на одном объекте, и они применяются слева направо:

{{ 'hello, world!' | capitalize | remove: "world" }}
{{ agent.namt | capitalize | remove: "ИП" }}

Строка начинается с заглавной буквы, а затем слово worldудаляется. Выход будет:

Hello, !
Иванов Иван Иванович

Вы можете использовать фильтры для разнообразных полезных манипуляций с данными. Они подразделяются на 4 типа:

В примере выше применяется {% if %} и {% else %}

тэги выполнения условия
Тэги выполнения условия
Тэги итераций
Тэги объявления переменных
фильтры массивов
математические фильтры
строковые фильтры
дополнительные фильтры
теги
фильтры
массивы