Доступные типы Liquid
Объекты Liquid могут возвращать один из основных 7 типов: String, Number, Boolean, Array, Dictionary, DateTime или Null. Переменные Liquid могут инициализировать с помощью тегов assign или capture.
String
Строка объявляется путем заключения текста в одинарные или двойные кавычки.
{% assign string_a = "Hello World!" %}
{% assign string_b = 'Single quotes work too.' %}
Число знаков в строке можно получить с помощью свойства size.
{{ string_a.size }} <!-- Output: 12 -->
Число
Числа могут быть целыми или с плавающей запятой.
{% assign pi = 3.14 %}
{% if page.title.size > 100 %}
This page has a long title.
{% endif %}
Boolean
Логическое значение может быть истинным или ложным.
{% assign x = true %}
{% assign y = false %}
{% if x %}
This will be rendered, because x is true.
{% endif %}
Массив
Массив содержит список значений любого типа. Можно получить доступ к определенному элементу по индексу (с отсчетом с нуля) с помощью [ ], выполнять итерации по элементам с помощью тега for и получать количество элементов в массиве с помощью свойства size.
{% for view in entitylist.views %}
{{ view.name }}
{% endfor %}
{{ entitylist.views[0] }}
{% if entitylist.views.size > 0 %}
This list has {{ entitylist.views.size }} views.
{% endif %}
Словарь
Словари содержат коллекцию значений, к которым можно получить доступ с помощью ключа строки. Можно получить доступ к определенному элементу по ключу строки с помощью [ ], выполнять итерации по элементам с помощью тега for и получать количество элементов в словаре с помощью свойства size.
{{ request.params[ID] }}
{% if request.params.size > 0 %}
The request parameters collection contains some items.
{% endif %}
Дата и время
Объект DateTime представляет определенную дату и время.
{{ page.modifiedon | date: 'f' }}
Null
NULL представляет пустое или несуществующее значение. Все выходные данные, которые пытаются вернуть значение NULL, не отображают ничего. В условиях это значение обрабатывается как ложное.
{% if request.params[ID] %}
This will render if the ID request parameter is NOT null.
{% endif %}