Как в mFilter2 сортировать товари по наличии?

Как в mFilter2 сортировать товари по наличии так чтобы если у товара есть размеры XS, M и у них количество по 0 то товар опускаем в низ списка.
Код:
{'!mFilter2'|snippet:[
                'parents'=>$_modx->resource.id,
                'element'=>'msProducts',
                'class'=>'msProduct',
                'sortby'=> '{"menuindex":"ASC"}',
                'sortbyTV'=>'Prod04',
                'sortdirTV'=>'DESC',
                'limit'=>$lim,
                'tplOuter'=>'tpl.mFilter2.outer_dev2',
                'tpl'=>'tpl.mFilter2.productrow_dev2',
                'tpls'=>'tpl.mFilter2.productrow_dev2,tpl.mFilter2.productrow_dev2',
                
                'tplFilter.outer.msoption|size'=>'tpl.mFilter2.filter.outer_size_dev',
                'tplFilter.row.msoption|size'=>'tpl.mFilter2.filter.checkboxSize',
                'tplFilter.outer.msoc|color~value~color'=>'tpl.msOptionsColor.outer_dev',
                'tplFilter.row.msoc|color~value~color'=>'tpl.mFilter2.filter.checkbox.color',
                'tplPage' => '@INLINE <li><a href="{$href}" class="page_link">{$pageNo}</a></li>',
                'tplPageWrapper' => '@INLINE <ul class="pagination__list">{$prev}{$pages}{$next}</ul>',
                'tplPageActive' => '@INLINE <li><span class="page_link active">{$pageNo}</span></li>',
                'tplPageSkip' => '@INLINE <li><span class="page">...</span></li>',
                'tplPageNext' => '@INLINE <li class="pagination__next"><a href="{$href}"><svg class="icon"><use xlink:href="/assets/site/css/icons.svg#icon_arrov_pagination"></use></svg></a></li>',
                'tplPageNextEmpty' => ',',
                'tplPagePrev' => '@INLINE <li class="pagination__prev"><a href="{$href}"><svg class="icon"><use xlink:href="/assets/site/css/icons.svg#icon_arrov_pagination"></use></svg></a></li>',
                'tplPagePrevEmpty' => ',',
                'tplPageLast' => '@INLINE <li><a href="{$href}" class="pagination__last"></a></li>',
                'tplPageLastEmpty' => ',',
                'tplPageFirst' => '@INLINE <li><a href="{$href}" class="pagination__first"></a></li>',
                'tplPageFirstEmpty' => ',',
                'pageLimit' => 8,
            ]}
Сергій
12 июля 2024, 16:40
modx.pro
335
0
Поблагодарить автора Отправить деньги

Комментарии: 7

Артур Шевченко
12 июля 2024, 20:50
0
Сделать отдельное поле и сортировать по нему.
    Сергій
    13 июля 2024, 20:50
    0
    Это возможно и такой вариант рабочий. Только бы хотелось сделать сортировку по полям которые уже есть.
    Только как сделать вариантов я не нашел рабочих.
      Артур Шевченко
      13 июля 2024, 22:31
      0
      Товар один у него несколько размеров, а как каждому размеру задано количество?
        Сергій
        14 июля 2024, 02:11
        0
          Сергій
          14 июля 2024, 04:55
          0
            Артур Шевченко
            14 июля 2024, 10:31
            0
            Можно попробовать присоединить таблицу с модификациями просуммировав поле с количеством и сортировать по нему. Но если у тебя несколько тысяч товаров могут начаться тормоза.
              Сергій
              14 июля 2024, 13:35
              0
              Ну я так и полян что решения нет.
              Я пробовал сделать через снипет. Но не знаю как в него передать ID товара чтобы получить 0 или 1 для сортировки.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7