Похожий товар с помощью &where

Здравствуйте!
Пытаюсь сделать вывод «похожих товаров» в карточке товаров. С помощью &where.
У меня есть опция mir_shape(Форма), по которой я их хочу выводить «похожие товары»
Похожие товары вывожу с помощью pdoPage:
[[!pdoPage?
   &element=`msProducts`
   &parents=`[[*parent]]`
   &limit=`4`
   &includeThumbs=`90x90,330x330`
   &sortby=`RAND()`
   &tpl=`item-row`
   &tplWrapper=`cognateOuter.Tpl`
   &includeContent=`1`
]]
Пытаюсь вывести таким образом:
&where=`{"mir_shape.value":"[[+mir_shape.value]]"}`
но не работает. Что-то видимо недопонимаю.

Как возможно это реализовать?
Alexandr
22 февраля 2022, 12:57
modx.pro
752
0

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

Евгений Webinmd
22 февраля 2022, 14:23
0
В каком виде в [[+mir_shape.value]] хранятся ваши похожие товары?
    Alexandr
    22 февраля 2022, 14:29
    0
    Не совсем.
    В miniShop2 можно создать дополнительные опции для товаров.
    Соответственно. Я вывожу «похожие товары» из родительского ресурса товара который в данный момент открыт, но их в родительской категории может быть много. Соответственно я хочу вывести товары «похожие товары» похожей формы ([[+mir_shape.value]]), а не рандомно из родительской категории.
      Евгений Webinmd
      22 февраля 2022, 14:34
      +1
      попробуйте использовать optionFilters
      &optionFilters=`{"mir_shape":"[[+mir_shape]]"}`
      Специальный параметр &optionFilters подключает необходимые таблицы и дополняет параметр &where, позволяя фильтровать товары по их опциям.
        Alexandr
        22 февраля 2022, 15:00
        0
        Получилось. Только вот таким образом:
        &optionFilters=`{"mir_shape":"[[+mir_shape.value]]"}`
        Спасибо за помощь. А если по нескольким опциям, то добавить запись через and?
          Евгений Webinmd
          22 февраля 2022, 15:02
          +1
          через запятую для and вроде как
          &optionFilters=`{"mir_shape":"[[+mir_shape.value]]", "option2":"[[+option2.value]]"}`
            Alexandr
            22 февраля 2022, 15:11
            0
            Понял. Попробую попозже. Спасибо большое за помощь.
            Что-то в документации глянул примеры про "&optionFilters" и подумал что подходит только для числовых значений.
      Alexandr
      22 февраля 2022, 14:33
      0
      В каком виде в [[+mir_shape.value]] хранятся ваши похожие товары?
      В виде слова: «Круглое», «Прямоугольное», «Квадратное», «Фигурное»
      Денис Усачев
      20 февраля 2023, 17:02
      0
      может кому будет полезно: конструкция посредством Fenom

      {set $baza_filter = $_modx->resource.baza_filter[0]}
      {set $baza_color = $_modx->resource.color_filter[0]}
      'optionFilters' => ' { "baza_filter":"'~ $baza_filter ~'" , "color_filter":"'~ $baza_color ~'"  } ' ,
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        8