Объекты Liquid бывают пяти типов. Вы можете инициализировать переменные Liquid, используя теги назначения (assign) или захвата (capture).

 

В этом материале


Строка (string)

Строка объявляется, заключив значение переменной в одинарные или двойные кавычки.

{% assign my_string = "Привет, мир!" %}

Число (numbers)

Числа включают в себя плавающие и целые числа.

{% assign my_int = 25 %}
{% assign my_float = 39.756 %}

Булев (boolean)

Булевы являются либо true, либо false. Кавычки не требуются при объявлении логического значения.

{% assign foo = true %}
{% assign bar = false %}

Ничего (null/nil)

Nil - это специальное пустое значение, которое возвращается, когда код Liquid не имеет результатов. Это не строка с символами "nil".

Nil считается ложным в условиях блоков if и других тегов Liquid, которые проверяют правдивость заявления.

В следующем примере, если пользователь не существует (то есть, user возвращает null), Liquid не будет показывать приветствие.

{% if user %}
  Привет, {{ user.name }}!
{% endif %}

Теги или выводы, которые возвращают null не буду ничего показывать.

Текущий пользователь: {{ user.name }}
Текущий пользователь: 

Массив (array)

Массивы содержат списки переменных любого типа.

 

Доступ к элементам в массивах

Получить доступ ко всем элементам массива вы можете в цикле с помощью тега for или tablerow.

{% for tag in product.tags %}
  {{ tag }}
{% endfor %}
продажа лето весна оптом
 

Доступ к определенным элементам в массивах

Вы можете использовать квадратные скобки, [ ] для получения доступа к конкретным элементам в массиве. Индексация массива начинается с нуля.

<!-- if product.tags = "продажа", "весна", "лето", "оптом" -->
{{ product.tag[0] }}
{{ product.tag[1] }}
{{ product.tag[2] }}
продажа
весна
лето
 

Инициализация массивов

Вы не можете инициализировать массивы, используя только Liquid.

Однако, вы можете, использовать фильтр split или arrayCombine, чтобы разбить строку на массив подстрок.