Top.Mail.Ru

collection

Переменная collection, соответствует категории из каталога товаров в разделе Товары. К конктерной категории можно обратиться по пермалинку.

Дополинтельные поля категории

Параметры товаров категории

Свойства товаров категории

collection.id - id коллекции

collection.url - URL коллекции

collection.handle - пермалинк коллекции

 <a href="{{ collection.url }}">{{ collection.title }}</a>

collection.description - описание категории.

collection.seo_description - дополнительное описание категории.

collection.title - название категории.

collection.page_title - html-тег title страницы категории.

collection.meta_description - значение мета тега description категории.

collection.meta_keywords - значение мета тега keywords категории.

collection.image - изображение категории. Задается в настройках категории.

collection.recursive? - включена ли настройка "Содержит товары из подкатегорий"

collection.products - товары категории.

  {% for product in collection.products %}
    {% include 'product_preview' %}
  {% endfor %}

collection.products_count - количество товаров в данной категории.

collection.products_price_min - минимальная цена товара в категории.

collection.products_price_max - максимальная цена товара в категории.

collection.current_collections - массив родительских категорий, включая текущую (каждый элемент массива в свою очередь является объектом типа collection).

collection.current? - является ли категория текущей (true/false) - является ли категория, в которой находится покупатель, вложенной в категорию collection

collection.subcollections - подколлекции данной категории

collection.level - уровень вложенности категории (начинается с 1)

collection.parent - родительская категория (объект типа collection)

collection.current_collections - список текущих категорий (полезно в случае многоуровневой структуры каталога), например для вывода хлебных крошек:

 {% for collection in current_collections %}
    <a href="{{ collection.url }}">{{ collection.title }}</a>
 {% endfor %}

collection.first? - первая ли категория среди подкатегорий родительской категории. Метод используется только в выводе дерева категорий через collections.flatten. (Пример вывода дерева категорий)

collection.last? - последняя ли категория среди подкатегорий родительской категории. Метод используется только в выводе дерева категорий через collections.flatten. (Пример вывода дерева категорий)

collection.show? - нужно ли показывать категорию при отображения дерева. Истина, если это категория верхнего уровня, текущая или родительская категория является текущей. Метод используется только в выводе дерева категорий через collections.flatten. (Пример вывода дерева категорий)

collection.level_difference? - возвращает разницу уровней между текущей и предыдущей категорией, по сути число означает сколько закрывающих тегов надо вывести при отображении дерева. Метод используется только в выводе дерева категорий через collections.flatten. (Пример вывода дерева категорий)

{% if collection.subcollections.size > 0 %} - есть ли у категории подкатегории. Метод используется только в выводе дерева категорий через collections.flatten.

collection.previous_product и collection.next_product - предыдущий и следующий товары. При помощи этих методов можно организовать в карточке товара переход к предыдущему и следующему (горизонтальная навигация):

{% if collection.products.size > 1 %}  
     <div class="prods-paginate">
       <a href="{% if collection.previous_product.url %}{{ collection.previous_product.url }}
{% else %}
{{ collection.products.last.url }}{% endif %}" class="fl"><span class="prev">⟨</span>предыдущий товар</a>
       <a href="{% if collection.next_product.url %}{{ collection.next_product.url }}
{% else %}
{{ collection.products.first.url }}{% endif %}" class="fr">следующий товар<span class="next">⟩</span></a>
     </div>
 {% endif %}  

collections.properties - параметры всех товаров категории.

collection.options - свойства всех товаров категории.


collection.filters - массив всех seo-фильтров категории.

Дополнительные поля категорий

collection.fields - возвращает дополнительные поля категории в формате пермалинк:значение

Например, есть поле "Название книги", с пермалинком - "book" и со значением для конкретной категории "Как увеличить продажи в интернете"

  {{ collection.fields.book.value }}  // Выведет "Как увеличить продажи в интернете"
  {{ collection.fields.book.title }}  // Выведет "Название книги"

Также можно перебрать циклом:

{% for field in collection.fields %}
{% if field.value != blank %} <div class="title">{{field.title}}</div> <div class="content"> {{field.value}} </div> {% endif %}
{% endfor %}

Параметры всех товаров категории

collection.properties - все параметры товаров категории.

Например, вывод всех параметров товаров категории вместе с их значениями:

{%for property in collection.properties %}
  {{property.name}}: {%for item in property.characteristics%}{{item.name}},{%endfor%}
{%endfor%}

Вывод фильтра по параметрам выпадающими списками (select):

 <form id="characteristics" action="{{collection.url}}" method="get">
        <ul>
          {% for property in collection.properties %}
          <li>
            <label for="characteristics[]">{{property.title}} : </label>
            <select name="characteristics[]" class="characteristic">
              <option value="">выберите</option>
              {% for characteristic in property.characteristics %}
                <option value="{{characteristic.id}}"
{% if characteristic.current? %} selected="selected" {% endif %}>
{{characteristic.title}} ({{characteristic.products_count}})</option>
              {% endfor %}
            </select>
          </li>
          {% endfor%}
        </ul>
     </form>

Вывод значения для конкретного параметра (с пермалинком 'vendor') (считаем, что для данного параметра только одно значение) :

  {{collection.properties.vendor.name}}: {{collection.properties.vendor.characteristics.first.name}}

 

collection.current_characteristics - массив текущих значений параметров при фильтрации (каждый элемент массива является объектом типа characteristics).

collection.current_option_values - массив текущих значений свойств при фильтрации (каждый элемент массива является объектом типа option_value)

Полезно для того чтобы не потерять уже выбранные в фильтре свойства при применении другой формы:

{% for characteristic in collection.current_characteristics %}
<input type="hidden" name="characteristics[]" value="{{characteristic.id}}"
{% endfor %}
{% for value in collection.current_option_values %}
<input type="hidden" name="options[{{value.option_name.id}}][]" value="{{value.id}}"
{% endfor %}

Свойства всех товаров категории

collection.options - все свойства товаров категории.

collection.current_option_values- массив свойств в фильтрации.

Вывод всех свойств товаров категории вместе с их значениями:

{%for option in collection.options %}
  {{ option.title }} : 
{% for value in option.values %}{{ value.title }}{% if forloop.last %}{% else %},{% endif %} {% endfor %} {%endfor%}

Оставить оценку

Оценка успешно отправлена.
Она будет проверена администратором перед публикацией.
Перед публикацией все оценки проходят модерацию

Оценки: 0

Остались вопросы?
Отправь тикет в техподдержку!
Еще нет своего магазина?
Создайте интернет-магазин на платформе InSales
Всё для продаж уже внутри!
Недавно просмотренные статьи