Как написать условие OR c помощью fenom?

Все привет, делаю фильтрацию товаров, и столкнулся с проблемой и недостатком знаний как организовать условие в скобках и с OR между ними. Подскажите, кто разбирается. P.S. Код весь не влазит, но нужное я разместил.

{var $filter = []}
{if $get.gem?}{set $filter['consist'] = $get.gem}{/if}
{if $get.metal?}{set $filter['metal'] = $get.metal}{/if}
{if $get.size?}{set $filter['size'] = $get.size}{/if}
{if $get.type?}{set $filter['fabric:IN'] = $get.type}{/if}
{if $get.tag?}{set $filter['tags:IN'] = $get.tag}{/if}
{if $get.label?}
    {foreach $get.label as $label}
        {set $filter[$label] = 1} // Вооот здесь
    {/foreach}
{/if}

<div class="products flx">
{var $products = '!pdoPage' | snippet : [
    'element' => 'msProducts',
	'parents' => 19,
	'depth' => 0,
	'limit' => $get.pagesize ? : 12,
	'tpl' => 'tplProducts',
	'includeThumbs' => 'thumb',
	'optionFilters' => $filter | toJSON,
	'where' => $where,
]}
Евгений Лазарев
10 февраля 2020, 14:45
modx.pro
301
0

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

Евгений Лазарев
10 февраля 2020, 14:45
0
Получается что то вроде
WHERE  ( `msProduct`.`class_key` = 'msProduct' AND (Data.price>=0 AND Data.price<=999999999 AND Data.price!=0)  AND `tags`.`value` IN ('Любовь','Мышь') AND `new`.`value` = '1' AND `favorite`.`value` = '1' AND `msProduct`.`parent` IN (19) AND `msProduct`.`published` = 1 AND `msProduct`.`deleted` = 0 )  GROUP BY msProduct.id, `thumb`.url ORDER BY msProduct.publishedon DESC LIMIT 12
А нужно
<code>WHERE  ( `msProduct`.`class_key` = 'msProduct' AND (Data.price>=0 AND Data.price<=999999999 AND Data.price!=0)  AND `tags`.`value` IN ('Любовь','Мышь') AND (`new`.`value` = '1' OR `favorite`.`value` = '1') AND `msProduct`.`parent` IN (19) AND `msProduct`.`published` = 1 AND `msProduct`.`deleted` = 0 )  GROUP BY msProduct.id, `thumb`.url ORDER BY msProduct.publishedon DESC LIMIT 12</code>
    Тодор
    10 февраля 2020, 15:13
    0
    Попробуй так:
    {'!pdoPage' | snippet:[
        'element' => 'msProducts',
        'parents' => 19,
        'depth' => 0,
        'limit' => 0,
        'tpl' => '',
        'showLog' => 1,
        'where' => '[{
            "Data.metal:=":"Ferum",
        },{
            "Data.size:=":"100",
        },{
            "Data.new:=":"1",
            "OR:Data.favorite:=":"1"
        },{
            "tags.value:IN": [\'Любовь\',\'Мышь\']
        }]'
    ]}
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    3