Возможность управления опциями товара в родительской категории в minishop2

Доброго дня!
На сайте большое количество категорий с различными опциями товаров в них.
Пытаюсь сделать возможность управлять ими в каждой категории.
Для начало создал 20 опций в minishop2 для всех товаров.
Затем сделал доп поле MIGX для категории, в ней возможность выбрать одну опцию из 20, ввести ее название для данной категории и будет ли использоваться в фильтре (mFilter2).
Затем в шаблоне категории вывожу через getImageList в плагине mFilter2 поля, которые отмечены для использования.

[[!mFilter2?
    				&element=`msProducts`
    				&class=`msProduct`
                                ........
    				&filters=`
    					ms|price:number,
    					parent:categories,
                        [[getImageList?
                            &tvname=`filtr_mini`
                            &tpl=`tpl_filtr_mini`
                        ]]
    				`
    				&tplFilter.outer.ms|price=`tpl.mFilter2.filter.slider`
    				&tplFilter.row.ms|price=`tpl.mFilter2.filter.number`
    			]]
в чанке tpl.mFilter2.filter.outer вместо [[%mse2_filter_[[+table]]_[[+filter]]]] вывожу название опции из MIGX [[getImageList? &tvname=`filtr_mini` &tpl=`@CODE: [[+option2]]` &where=`{ «option1:=»:"{$filter}" }` ]]

а как сделать, чтоб в админке в карточке товара выводились только те опции опции, которые выбраны в категории через MIGX и с необходимыми названиями, а не все 20?
Или может есть еще другое решение или готовый модуль?
Дмитрий
20 декабря 2022, 12:46
modx.pro
497
0

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

Артур Шевченко
20 декабря 2022, 13:59
0
А чем не устроил стандартный механизм привязки опций к категориям?
    Дмитрий
    20 декабря 2022, 14:35
    0
    отсутствием возможности менять название в различных категориях. Допустим есть опция Размер, в одной категории она должна называться Размер спального места, для другой допустим Габариты… придется создавать не одну опцию, а несколько
      Артур Шевченко
      20 декабря 2022, 15:16
      0
      Или может есть еще другое решение
      Можно создать столько опций сколько есть названий. Разделить их по группам. Установить этот компонент. Таким образом можно будет привязать нужные опции соответствующим категориям и легко добавить их в фильтры.

      Другой вариант, к твоей схеме добавить плагин на сохранение категории, который будет создавать привязку выбранных опций к текущей категории, т.е. как бы будет за тебя галочки проставлять в стандартном механизме.
        Дмитрий
        21 декабря 2022, 09:50
        0
        спасибо за ответ. Вариант с SelectFilters оставляю на крайний случай. жаль что не позволяет выбрать фильтра (select, slider)
          Артур Шевченко
          21 декабря 2022, 13:12
          0
          Можно его доработать и выбирать тип фильтра по типу опции.
        Николай Савин
        20 декабря 2022, 15:21
        +1
        Можно вместо названия писать ключи лексиконов.
        Далее в каждой категории добавлять к лексикону какой-то префикс или суффикс. В этом случае на один ключ можно получить множество именований.
        Примерно по такому принципу работают заголовки фильтров в mFilter2
          Дмитрий
          21 декабря 2022, 09:59
          0
          В категории создано доп поле MIGX prnt.sc/C0ylMEOl15aj там задаю список опций для данной категории, как будет опция назваться и будет ли выводится в фильтре

          на frontend я поменял название опций в фильтре, если они выводятся
          [[getImageList? &tvname=`filtr_mini` &tpl=`@CODE: [[+option2]]` &where=`{ "option1:=":"{$filter}" }` ]]
          Вопрос в том как в админке поменять, чтоб контент менеджер понимал, что заполнять, ведь там выводятся все опции
            Алексей Смирнов
            21 декабря 2022, 18:33
            0
            По факту вы усложняете тем что хотите ключ один а названия разные — это чревато.
            Если у вас свойств примерно 20..30, то лучше создавать опции специально под необходимые параметры. Так и выборки будут быстрее идти и не запутаетесь в опциях одинаковых. И потом поддерживать вам же будет проще.
            Если хотите прям принципиально, то лучше уже использовать TV параметры. Там можно с помощью форм переназывать ТВ-шки.
              Дмитрий
              27 января 2023, 16:41
              0
              спасибо за ответ, наверно вы правы, сделал опции под каждый параметр.
              сложность была в том, что товары на сайт нужно было перенести с EVO, а там опции были реализованы так, что в каждой категории можно было прописать название prnt.sc/UPXedFOQ06JK
              пришлось повозится чтоб перенести товары.
            Николай Савин
            21 декабря 2022, 13:30
            0
            Откуда взялся MIGX?
            Есть же встроенный механизм присвоения категорий опциям.
            Используйте его.
            Как обойти проблему с вариативностью названий я вам написал.
              Дмитрий
              27 января 2023, 16:41
              0
              спасибо за ответ
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        11