Фильтр с категориями

Есть магазин одежды. Он делится на 2 основные категории: мужское и женское.
В каждой из этих категорий могут повторяться названия вложенных категорий. Например, обувь, верхня одежда и т.д.

Проблема в том, что когда я вывожу товары из категорий М и Ж на одной странице, то фильтр по категориям только отображает одну из вложенных категорий, у которой есть двойник в другом разделе.

Т.е. если есть 2 подраздела обувь, которые находятся в разных категориях, то в фильтре будет выведен только один из них. При этом товары на странице без фильтрации выводятся все корректно.
Как сделать, чтобы товары в одноименных категориях объединялись?

Сам сниппет.
{'!mFilter2' | snippet : [
                    	'paginator'=>'pdoPage@wia',
                    	'class'=>'msProduct',
                    	'element'=>'msProducts',
                    	'sortby' => '{"Data.new":"DESC","parent":"DESC","publishedon":"DESC"}',
                    	'tplOuter'=>'wia.mFilter2.outer',
                    	'parents'=>'13,14',
                    	'includeTVs'=>'switchPrice',
                    	'tvPrefix'=>'',
                    	'tpls'=>'wia.msProducts.row',
                    	
                    	'filters'=>'ms|price:price,
                    	            resource|parent:categories,
                    	            msoption|color:default,
                    	            msoption|size:default',
                    				
                    	'tplFilter.outer.ms|price'=>'wia.mFilter2.filter.price.slider',
					    'tplFilter.row.ms|price'=>'wia.mFilter2.filter.price.row',
					    'tplFilter.outer.msoption|color'=>'wia.mFilter2.filter.outer',
                        'tplFilter.row.msoption|color'=>'wia.mFilter2.filter.checkbox.color',
                        'tplFilter.outer.msoption|size'=>'wia.mFilter2.filter.outer',
                        'tplFilter.row.msoption|size'=>'wia.mFilter2.filter.checkbox',
                        'tplFilter.outer.resource|parent'=>'wia.mFilter2.filter.outer',
                        'tplFilter.row.resource|parent'=>'wia.mFilter2.filter.checkbox.cat',
                        'tplFilter.outer.ms|vendor'=>'wia.mFilter2.filter.outer.vend',
                        'tplFilter.row.ms|vendor'=>'wia.mFilter2.filter.checkbox.vend',
                    
                    	'includeThumbs'=>'260x260',
                        'limit'=>'15',
                    	
                    	'leftJoin' => '{"localizator" : {"class" : "localizatorContent","alias" : "localizator","on" : "localizator.resource_id = msProduct.id"}}',
                    	'select' => '{ "localizator" : "msProduct.*, localizator.*, msProduct.id" }',
                    	'where' => '{ "localizator.key" : "' ~ ('localizator_key' | option) ~ '"}'
                    	
                    	
                    	
                    ]}
Алексей П
19 июня 2018, 16:50
modx.pro
1 341
0

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

R2m0x94 (Vasily)
29 мая 2019, 23:41
0
На тестовом сайте даже если отфильтровать скажем так:
https://minishop2.com/search/filter?ms|price=270,2700&resource|parent=25&msoption|tags=Тег%202&ms|vendor=1&ms|old_price=0
затем в строку поиска ввести = 32, вся наша логика сломается. Почему нельзя было по дефолту сразу расширить дефолтный скрипт чтобы, если андройд фильтрует из нескольких тысяч, допустим сотню нуменклатуры, и хочет ещё в поиске что-то указать например = 32 он получает
https://minishop2.com/search/filter?query=32
а не 32 c тегом. m2R2?
https://minishop2.com/search/filter?query=32&ms|price=270,2700&resource|parent=25&msoption|tags=Тег%202&ms|vendor=1&ms|old_price=0
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1