{{ " So much room for activities! " | lstrip }} >> So much room for activities!
escape(input)
Фильтр используется для преобразовывания специальных и национальных символов в URL представление (percent-encoding: пробел в %20, например) в тексте ссылки. Это необходимо, согласно стандарта RFC1738 - Uniform Resource Locators (URL).
{{ link.title | escape }}
append(input)
Фильтр используется для добавления указанных символов к концу указанной строки.
{{ 'sales' | append: '.jpg' }}sales.jpg
prepend(input)
Фильтр используется для добавления указанных символов к началу указанной строки.
size(input)
Возвращает размер массива или строки.
{{ 'this is an 30 character string' | size }}30
sort(input, property = z)
Фильтр используется для сортировки массива. Второй параметр - необязательный.
split(input, segmenter = ' ')
Разбивает строку на массив подстрок по указанному разделителю. Пример:
{{ 'abc // foo // bar' | split: '//' | last }}bar
join(input, segmenter = ' ')
Фильтр объединяет массив в строку, используя как разделитель элементов указанную последовательность символов. Пример:
{{ product.tags | join: ', ' }}tag1, tag2, tag3
downcase(input)
Фильтр преобразовывает строку к нижнему регистру.
upcase(input)
Фильтр преобразовывает строку к верхнему регистру.
strip_html
Этот фильтр изымает из указанного текста все HTML-теги. Очень эффективен в сочетании с truncate. {{ article.content | strip_html | truncate: 20 }}
strip_newlines
Фильтр изымает из указанной последовательности символов служебный символ "Новая строка" (символ, обозначаемый NL, \n, имеющий код 0ah).
truncate(input, characters = 100)
Фильтр укорачивает строки до указанного количества символов удалением конца строки.
В случае, если обрабатываемый текст содержит HTML-теги, можно сперва применить фильтр strip_html(см. выше).
truncatewords(input, words = 15)
Фильтр укорачивает строку до указанного количества символов удалением конца строки.
My name is {% comment %}Mark{% endcomment %} DunkleyMy name is Dunkley
{% if %}
"If" statements let you determine if something is true or not
if username is elvis
{% if user.name == 'elvis' %}
hey Elvis
{% endif %}hey Elvis
Else if example
{% if user.name == 'elvis' %}
hey elvis
{% elsif user.name == 'Mark' %}
hey mark
{% else %}
hi stranger
{% endif %}hi stranger
{% unless %}
If not true, then it will do something
username is not "elvis"
{% unless user.name == 'elvis' %}
hey ugly
{% endunless %} hey ugly
{% case %}
Used when you have consistent cases of something
case [handle is 'cookie']
{% case handle %}
{% when 'cake' %}
This is a cake
{% when 'cookie' %}
This is a cookie
{% else %}
This is not a cookie/cake
{% endcase %}This is a cookie
{% cycle %}
Use when you need to alternate between something.
Basic example
{% cycle 'one', 'two' %}
{% cycle 'one', 'two' %}
{% cycle 'one', 'two' %}
one two one
Group cycles
{% cycle 'group 1': 'one', 'two', 'three' %}
{% cycle 'group 1': 'one', 'two', 'three' %}
{% cycle 'group 2': 'one', 'two', 'three' %}
{% cycle 'group 2': 'one', 'two', 'three' %} one
two
one
two
{% for %}
Use "for loops" if you want to repeat/test something over and over
Loop options
limit:
offset:
For Loop [product are: hat, pez, pad]
{% for product in collection.products %}
{{ product.name }},
{% endfor %}
hat, pez, pad,
Limit [product are: hat, pez, pad]
{% for product in collection.products limit:2 %}
{{ product.name }},
{% endfor %}
hat, pez,
{% break %}
Exits a for loop
{% raw %}
Временно отключить обработку тегов, чтобы избежать конфликтов синтаксиса.
{% raw %}
In Handlebars, {{ this }} will be HTML-escaped, but {{{ that }}} will not.
{% endraw %}
Есть ли у категории подкатегории. Метод используется только в выводе дерева категорий через collections.flatten.
collection.subcollections
Подколлекции данной категории.
collection.level
Уровень вложенности категории (начинается с 1).
collection.parent
Родительская категория.
current_collections
Список текущих категорий (полезно в случае многоуровневой структуры каталога), например для вывода хлебных крошек.
collection.first?
Первая ли категория среди подкатегорий родительской категории. Метод используется в выводе дерева категорий.
collection.last?
Последняя ли категория среди подкатегорий родительской категории. Метод используется в выводе дерева категорий.
collection.show?
Нужно ли показывать категорию при отображения дерева. Верно, если это категория верхнего уровня, текущая или родительская категория является текущей. Метод используется в выводе дерева категорий.
collection.level_difference?
Возвращает разницу уровней между текущей и предыдущей категорией, по сути число означает сколько закрывающих тегов надо вывести при отображении дерева.
collection.properties
Параметры всех товаров категории.
collections.current_characteristics
Текущие значения параметров всех товаров категории.
collections.[handle].flatten_branch
Массив коллекций без вложенности, тоесть субколлекции находятся в одном массиве с основными коллекциями.
collection.options
Свойства всех товаров категории.
collection.current_option_values
Текущие свойства всех товаров категории.
collection.next_product
При помощи этого метода можно организовать в карточке товара переход к следующему товару категории (горизонтальная навигация).
collection.previous_product
При помощи этого метода можно организовать в карточке товара переход к предыдущему товару категории (горизонтальная навигация).
collection.products_price_min
Минимальная цена товара в категории.
collection.products_price_max
Максимальная цена товара в категории.
collection.url
URL коллекции
collection.page_title
Title страницы категории
collection.recursive?
Включена ли настройка "Содержит товары из подкатегорий"
Флаг, обозначающий, включено использование купонов или нет, - если купоны запрещены тарифом - возвращает true.
cart.coupon
Введенный код купона.
cart.invalid_coupon?
Флаг, обозначающий, что введенн неверный купон, если купон не задан возвращает false.
cart.coupon_error
Сообщение ошибки ввода купона.
cart.discounts
Массив скидок.
item.id
Идентификатор позиции.
item.title
Название позиции.
item.product
Товар позиции.
item.variant
Модификация товара позиции.
item.sale_price
Цена одного товара позиции.
item.weight
Вес одного товара позиции.
item.quantity
Число товаров в позиции.
item.total_price
Суммарная стоимость товаров позиции.
item.total_weight
Суммарный вес товаров позиции.
item.url
URL для удаления товаров из корзины.
item.comment
Комментарий к позиции заказа.
Template variables
pages.liquid
page.id
Id страницы.
page.title
Название страницы.
page.content
Содержание страницы.
blog.liquid
blog.id
Id блога.
blog.handle
Пермалинк блога
blog.title
Заголовок блога
blog.articles
Массив статей
blog.articles_count
Кол-во статей
blog.url
URL блога
blog.comments_enabled?
Разрешены ли комментарии?
blog.moderated?
Модерируются ли комментарии.
article.liquid
article.id
Id статьи
article.title
Заголовок статьи
article.author
Автор статьи.
article.content
Содержание статьи.
article.created_at
Время публикации статьи.
article.preview
Анонс статьи
article.url
URL страницы статьи.
article.comments
Массив расположенных в хронологическом порядке комментариев.
article.comments_count
Количество комментариев к статье.
article.comments_enabled?
Возвращает true, если комментарии разрешены
article.moderated?
Возвращает true, если модерация разрешена
article.image
Изображение статьи.
article.related_products
Массив товаров привязанных к статье.
comment.id
Id комментария.
comment.author
Имя автора комментария.
comment.email
Email автора комментария..
comment.content
Текст комментария.
comment.errors
Список имен неправильно заполненных полей.
comment.created_at
Дата создания комментария.
comment.action_url
урл используемый для отправки post запроса на создание комментария.
Search
search.query
Запрос поиска.
search.performed?
Запущен ли поиск?
search.results
Результаты поиска, массив товаров.
Discount
amount
Численная величина скидки в денежном эквиваленте.
percent
Процент скидки, если задана в процентах.
description
Описание скидки.
type
Тип скидки (деньги или процент).
Order
order.id
Идентификатор заказа (используется для ссылки на страницу заказа в бекофисе).
order.number
Номер заказа.
order.items
Массив позиций заказа, переменная доступна на странице успешного оформления заказа.
order.key
Ключ, по которому выводится заказ - используется в url.
order.creation_date
Дата создания заказа.
order.currency
Валюта заказа.
order.custom_status_title
Название пользовательского статуса заказа (как он задан в разделе Настройки - Пользовательские статусы).
order.shipping_address
Данные адреса доставки (объект).
order.shipping_address.name - имя адресата.
order.shipping_address.phone - телефон адресата.
order.shipping_address.delivery_address - адрес доставки.
order.shipping_address.country_name - страна.
order.shipping_address.state - регион.
order.shipping_address.city - город.
order.shipping_address.address - адрес.
order.shipping_address.zip - индекс.
order.delivery_description
Описание способа доставки.
order.delivery_date
Дата доставки.
order.delivery_time
Интервал времени доставки, например, "с 10 до 18".
order.delivery_price.base
стоимость доставки без наценки на способ оплаты.
order.delivery_price
Стоимость доставки.
order.comment
Комментарий к заказу.
order.payment_title
Название способа оплаты.
order.payment_description
Описание способа оплаты.
order.margin
Наценка на способ оплаты.
order.client
Данные клиента (объект)
order.client.name - имя клиента.
order.client.surname - фамилия клиента.
order.client.middlename - отчество клиента.
order.client.phone - телефон клиента.
order.client.email - email клиента.
order.fields
Поля заказа
order.all_fields - массив кастомных полей заказа
order.fields - массив кастомных полей заказа выводимых в корзине
order.client.all_fields - массив полей клиента у заказа, включая скрытые поля клиента
order.client.client_fields - массив полей клиента у заказа( не включает скрытые поля )
order.shipping_address.all_fields - массив полей адреса у заказа, включая скрытые для клиента поля адреса
order.shipping_address.client_fields - массив полей адреса у заказа ( не включает скрытые поля )
order.result_fields - массив полей у заказа показываемые клиенту после оформления заказа
Field
field.title
Название поля для клиента
field.office_title
Название поля в бэк офисе
field.value
Значение поля
ofield.input
Сам input поля для вывода в шаблон корзины
field.for_buyer?
Показывается ли клиенту
field.obligatory?
Обязательное ли поле
field.description
Описание поля
field.type
Тип поля
file_field - загрузка файла
text_area - текстовое многострочное поле
select - выпадающий список
checkbox - чекбокс
text_field -текстовое поле
obligatory_text_field - обязательно текстовое поле(системный тип для поля "Контактное лицо")
system_text_field - текстовые поля первоначально введенные в бэк офис.
system_checkbox - чекбокс первоначально введенный в бэк офис(первоначально - Подписка)
phone - телефон
country - страна
kladr - Комплексная форма для ввода адреса.
Единица измерения товара. Доступные значения: "шт", "кг", "л; дм3", "м", "м2", "г", "т"
product.fields
возвращает дополнительные поля товара в формате пермалинк:значение. Например, есть поле "Название книги", с пермалинком - "book" и со значением для конкретного товара "Как увеличить продажи в интернете"
{{ product.fields.book.value }},{{ product.fields.book.title }}"Как увеличить продажи в интернете","Название книги"
product.is_bundle
Является ли товар комплектом?
product.bundle_components
Массив товаров входящих в комплект.
product.bundle_discount
Разница между ценой за комплект и суммой всех товаров комплекта. Например если комплект стоит 500 р., а сумма всех товаров комплетка 1200 р., product.bundle_discount => 700 р.. Если комплект стоит 5000 р., а сумма всех товаров комплетка 2000 р., product.bundle_discount => -3000 р..
bundle_component in product.bundle_components
bundle_component.product
Ссылка на товар из списка товаров комплекта
bundle_component.quantity
Колличество товарной позиции в комплекте
bundle_component.is_free
Товарная позиция является бесплатной? (для активации бесплатной позиции нужно выставить чекбокс "FREE" в бекофисе)
variant.id
Id модификации
variant.title
Название модификации
variant.price
Цена модификации
variant.available
Есть ли в наличии
variant.weight
Вес модификации
variant.sku
Артикул модификации
variant.old_price
Старая цена модификации.
variant.cost_price
Цена продажи модификации
variant.priceN
тип цен с пермалинком priceN модификации. Пермалинк типа цен можно получить после создания типа цен в разделе Настройки - Типы цен
Если в фильтре выбрано хотябы одно значение из property.characteristics, вернет true.
property.characteristics
Массив значений данного параметра. Например, вывод всех характеристик с указанием числа товаров.
property.differ?
Проверка на уникальность параметра товара на странице сравнения.
characteristic.url
URL для фильтрации товаров по данной характеристике в текущей коллекции.
characteristic.name
Название характеристики.
characteristic.handle
Прмалинк характеристики.
characteristic.current?
Текущая характеристика?
characteristic.products_count
Число товаров с данной характеристикой в текущей коллекции.
characteristic.property
Параметр, которому принадлежит данная характеристика.
option_name.id
Id свойства.
option_name.title
Название свойства.
option_name.values
Значения свойства.
{%for option_name in product.options %}
{{ option_name.title }} : {% for option_value in option_name.values %}{{ option_value.title }}{% if forloop.last %}{% else %},{% endif %} {% endfor %}
{%endfor%}
option_value.id
Id значения свойства.
option_value.title
Название значения свойства.
option_value.option_name
Свойства товара, значением которого является данное значение.
option_value.option_name.title
Имя свойства товара, значением которого является данное значение.
option_value.selected
Отмеченное значение в фильтре свойств?
option_value.products_count
Кол-во товара с данным значением свойства.
review.author
Имя автора отзыва.
review.email
email автора отзыва.
review.rating
Оценка товара, поставленная в отзыве.
review.content
Текст отзыва.
review.errors
Список имен неправильно заполненных полей.
review.created_at
Дата создания отзыва.
review.action_url
урл используемый для отправки post запроса на создание отзыва.
Paginate
paginate.current_page
Возвращает номер текущей страницы.
paginate.current_offset
Возвращает общее количество элементов, которые находятся на страницах, предшествующих текущему. Например, если вы постраничного на 5 и на третьей странице, paginate.current_offset вернется 10.
paginate.items
Возвращает общее количество элементов, которые будут пронумерованы. Например, если вы постраничного коллекцию из 99 продуктов, paginate.items возвратит 99.
paginate.parts
Возвращает массив всех частей пагинации.
paginate.previous
Возвращает ссылку на предыдущую страницу пагинации.
paginate.page_size
Возвращает количество элементов, отображаемых на одной странице.
paginate.pages
Возвращает количество страниц, созданных пагинацией.
Language
language.switch_url
URL переключения языка магазина на данный язык (используется в списке языков).
language.icon_url
Иконка языка.
language.title
Название языка.
language.locale
Локаль языка.
language.not_default?
Проверка на то, что текущий язык не является основным языком интернет-магазина. Это нужно знать, например, в форме поиска, так как нельзя передавать на сервер параметром локаль основного языка.
Linklist
linklist.id
Returns the id of this linklist
linklist.title
Returns the title of this linklist
linklist.handle
Returns the handle of this linklist
linklists.menu_name.links
Выбор ссылок конкретного меню, например вывод меню с названием footer.
{% for link in linklists.footer.links %}
<li class="{% if link.current? %}active{% endif %}" >
| <a href="{{ link.url }}">{{ link.title }}</a>
</li>
{% endfor %}
link.title
Returns the description of this link
link.url
Returns the url of this link
link.current?
Текущая ссылка?
Block_lists
block_lists.menu_name.id
Идентификатор панели блоков menu_name.
block_lists.menu_name.blocks
Выбор блоков конкретной панели, например вывод блоков с названием news:
{% for block in block_lists.news.blocks %}
<div class="infoBlock">
<strong>{{block.title}}</strong>
{{block.content}}
</div>
{% endfor %}
block.id
Идентификатор блока (числовой).
block.handle
Идентификатор блока (не числовой).
block.title
Заголовок блока.
block.content
Содержание блока.
blocks.name
Выбор конкретного блока, например с рекламой (advertising).
url, используемый для перехода в бекофис из письма.
account.reviews_enabled?
флаг указывающий включены отзывы на товар или нет
account.reviews_moderated?
флаг указывающий включена ли модерация отзывов на товары или нет
account.enable_clients?
флаг указывающий доступен ли на текущем тарифе личный кабинет покупателя
account.delivery_variants
массив всех способов доставкиaccount.delivery_variants.id - id способа доставки
account.delivery_variants.title - название способа доставки
account.delivery_variants.price - стоимость способа доставки
account.payment_gateways
массив всех способов оплатыaccount.payment_gateways.id - id способа оплатыы
account.payment_gateways.title - название способа оплаты
Client
client
По клиенту нельзя выводить его персональную информацию, только факт того, что клиент залогинен{% if client %}
Информация для клиентов
{% endif %}
Client_group
client_group.id
id группы к которой принадлежит залогиненый клиент
client_group.title
название группы к которой принадлежит залогиненый клиент
client_group.discount
скидка группы к которой принадлежит залогиненый клиент
client_group.discount_description
описание скидки группы к которой принадлежит залогиненый клиент