Фильтрация по числовому TV в mFilter2 (where)
Всем здравствуйте!
Не могу понять, в чем я туплю — перепробовал кучу разных вариантов, и ни один не срабатывает как нужно.
Есть товары, у которых бренд задан через TV, в который подгружается список ресурсов. Соответственно, значение этого поля у самого товара — числовое.
В категории выбираю только включенные бренды:
Не могу понять, в чем я туплю — перепробовал кучу разных вариантов, и ни один не срабатывает как нужно.
Есть товары, у которых бренд задан через TV, в который подгружается список ресурсов. Соответственно, значение этого поля у самого товара — числовое.
В категории выбираю только включенные бренды:
{set $published_brands = '!pdoResources' | snippet : [
'parents' => 2,
'depth' => 0,
'limit' => 0,
'returnIds' => 1
]|strToArray}и далее вызываю сам фильтр:{'!mFilter2' | snippet : [
'parents' => $_modx->resource.id,
'includeTVs' => 'brand',
'where' => '{ "TVbrand.value:IN": $published_brands }'
'class' => 'msProduct',
'element' => 'msProducts',
'sortby' => 'editedon',
'sortdir' => 'DESC',
'limit' => 18,
...
}В итоге, в выдачу упорно попадают товары от выключенных брендов. Ни ручная подстановка значений вида [1,2,3] вместо $published_brands, ни вариации с «brand:IN», ничего такое не решает проблему. Подскажите кто-нибудь, пожалуйста, я запутался. Комментарии: 7
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
А если очень хочется json
Зы: а, не увидел в условии, что подстановка массива не помогает…
Почему-то JSON не принимает переменную $published_brands. Я сходу не разобрал, как её корректно подставить…
И да, в таком виде — с массивом в where все заработало! Премного благодарен.