Группировка фильтров коллекции - настройка взаимодействия с пользователем - PullRequest
0 голосов
/ 23 апреля 2019

Мы бы хотели настроить фильтрацию групп сбора. В настоящее время групповая фильтрация группирует и показывает все теги продуктов, которые имеют подчеркивание в имени тега.

напр .: Brand_Premium

Однако мы хотели бы отображать группу фильтров только в том случае, если в группе доступно более одного фильтра:

ex: Все продукты на данной странице коллекции коллекции принадлежат одному бренду. В этом случае мы не хотим показывать группу фильтров для бренда, поскольку существует только одна опция.

{%- capture tag_icon -%}
  <span class="filter-icon--checkbox">
    {%- include 'icon-checkbox' -%}
  </span>
{%- endcapture -%}

{% for cat_item in cat_array %}
  {% assign tag_count = 0 %}
  <h3 class="productgrid--sidebar-title--small">
    {{ cat_item }}
  </h3>
  <ul class="productgrid--sidebar-item filter-group">
    {% for tag in collection.all_tags %}
      {% assign cat = tag | split: '_' | first %}
      {% if cat != tag and cat_item == cat %}
        {% assign tag_count = tag_count | plus: 1 %}
        {%- capture tag_text -%}
          {{- tag_icon -}}

          <span class="filter-text">
            {{ tag | remove_first: cat | remove_first: '_' }}
          </span>
        {%- endcapture -%}

        {% assign filter_class = 'filter-item' %}
        {%- if current_tags contains tag -%}
          {% assign filter_class = filter_class | append: ' filter-item--active' %}
        {%- else -%}
          {% assign filter_class = filter_class | append: ' filter-item--inactive' %}
        {%- endif -%}

        {%- if tag_count > tag_limit -%}
          {% assign filter_class = filter_class | append: ' filter-item--hidden' %}
        {%- endif -%}

        <li
          class="{{ filter_class }}"
          data-tag-advanced
          data-group="{{ cat_item }}"
          data-handle="{{ tag | handle }}"
          {% if tag_count > tag_limit %}data-hidden-default{% endif %}
          {% if current_tags contains tag %}aria-current="true"{% endif %}
        >
          {% if current_tags contains tag %}
            {{ tag_text | link_to_remove_tag: tag }}
          {% else %}
            {{ tag_text | link_to_add_tag: tag }}
          {% endif %}
        </li>
      {% endif %}
    {% endfor %}

    {% if tag_count > tag_limit %}
      <li class="filter-item">
        <a class="filter-text--link" href="#" data-filter-toggle="false">
          {{ 'general.general.see_more' | t }}
        </a>
      </li>
    {% endif %}
  </ul>
<hr />
{% endfor %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...