mFilter2 несколько полей в одной группе фильтров.

Здравствуйте.

У меня два вопроса по фильтру.

Мне нужно сгрупировать свойства.

ms|new
ms|favorite

Необходимо.

1. Отключить 0 (Нет) из выборки
2. Как сгругипировать несколько параметров и обернуть единой оберткой (присвоить единый заголовок оберткой)

Я понимаю можно сделать проверки, но хочется с более простой шаблонизацией.
Может кто-то сталкивался с данной задачей. Как сделать этого элегантнее.

Cпасибо.
Олег Щавелев
18 ноября 2019, 21:10
modx.pro
643
0
Поблагодарить автора Отправить деньги

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

Александр Туниеков
19 ноября 2019, 20:31
1
+2
1. Отключить 0 (Нет) из выборки
Можно параметры фильтра на mFilter2 передавать с этим фильтрами и без них.
{if true}
    {set $filter = 'parent:grandparents,ms|new,ms|favorite'}
{else}
    {set $filter = 'parent:grandparents'}
{/if}
{'!mFilter2' | snippet : [ 'filters'=>$filter]}
2. Как сгругипировать несколько параметров и обернуть единой оберткой (присвоить единый заголовок оберткой)
&toSeparatePlaceholders Работает так же как и &toPlaceholders, только в раздельные плейсхолдеры попадает еще и filters. Например, если вы укажете &toSeparatePlaceholders=`my.` и &filters=`tv|test,resource|pagetitle` то получите плейсхолдеры [[+my.results]], [[+my.total]], [[+my.tv|test]] и [[+my.resource|pagetitle]].
Выводим в плейсхолдеры и
{if 'my.ms|new' placeholder || 'my.ms|favorite' placeholder}
    <div>
        <h3>You own title</h3>
        {'my.ms|new' placeholder}
        {'my.ms|favorite' placeholder}
    </div>
{/if}
Может конечно решение получше, но мне только такое пришло в голову.
    Олег Щавелев
    19 ноября 2019, 20:48
    0
    Александр, спасибо. Хорошая идея подумаю над данный подходом. Возможно он упростит жизнь)
    Олег Щавелев
    19 ноября 2019, 20:43
    0
    Идея в том что шаблонизация mfiltr2 не предусматривает добавление несколько свойств в одну секцию. Поэтому правильней создать свойство в рамках которого хранится несколько значений.

    Решил воспользоваться msFieldsManager и добавить свойство «груповые чекбоксы». Выглядят они в CMS следующим образом.



    А вызываем фильтре мы очень просто msoption|Название поля|Метод

    Как-то так)
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      3