Как правильно перенести один из фильтров в другое место?
Добрый вечер!
Мне нужно расположить фильтр по брендам над товарами и удалить его из левой колонки, где он сейчас расположен.
В mFilter2 я воспользовался параметром toSeparatePlaceholders задав ему префикc _my и разместил плейсхолдер {'my_ms|vendor' | placeholder} в нужное место.
Вопрос. Как теперь скрыть фильтр по брендам из левой колонки?

Вот как вывожу фильтр
Мне нужно расположить фильтр по брендам над товарами и удалить его из левой колонки, где он сейчас расположен.
В mFilter2 я воспользовался параметром toSeparatePlaceholders задав ему префикc _my и разместил плейсхолдер {'my_ms|vendor' | placeholder} в нужное место.
Вопрос. Как теперь скрыть фильтр по брендам из левой колонки?

Вот как вывожу фильтр
<div class="row msearch2 msearch2-desc " id="mse2_mfilter">
{'!mFilter2' | snippet : [
'class'=>'msProduct',
'element'=>'msProducts',
'sortby'=>'id',
'values_delimeter'=>';',
'paginator'=>'pdoPage@myPdoPage',
'limit'=>18,
'sortdir'=>'asc',
'depth'=>0,
'parents' => $_modx->resource.id,
'includeThumbs'=>'medium',
'tpls'=>'@FILE chunks/product/productListTpl.tpl',
'toSeparatePlaceholders' =>'my_',
'tplFilter.row.ms|old_price'=>'mySalesTplMFilter2FilterCheckbox',
'tplFilter.outer.ms|old_price'=>'mySalesTplMFilter2FilterOuter',
'tplFilter.row.default'=>'myTplMFilter2FilterCheckbox',
'tplFilter.outer.default'=>'myTplMFilter2FilterOuter',
'filters'=>($filters | join : ','),
'tplFilter.outer.ms|price'=>'myTplMFilter2FilterSlider',
'tplFilter.row.ms|price'=>'tpl.mFilter2.filter.number',
'tplFilter.row.ms|vendor'=>'categoryBrandsFilterCheckbox',
'tplFilter.outer.ms|vendor'=>'categoryBrandsFilterOuter',
]}
<div class="col-md-3 d-none d-lg-block filters-block">
<form action="{$_modx->resource.uri}" method="post" id="mse2_filters" class="filter-desc">
{$_modx->getPlaceholder('my_filters')}
{if $_modx->getPlaceholder('my_filters')}
<button type="reset" class="btn btn-dark hidden">[[%mse2_reset]]</button>
<div class="clearfix"></div>
{/if}
</form>
</div>
<div class="col-lg-9 col-md-12">
<div class="col-12 msearch2-sales">{'my_ms|vendor' | placeholder}</div> {* Здесь новое место для фильтра по бренду *}
<div id="mse2_selected_wrapper">
<div id="mse2_selected">[[%mse2_selected]]:<span></span></div>
</div>
<div id="mse2_results" class="row">
{$_modx->getPlaceholder('my_results')}
</div>
<div class="mse2_pagination">
{'page.nav' | placeholder}
</div>
</div>
</div>Заранее спасибо! Комментарии: 6
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
вам нужно сделать foreach по $filters и выводить каждый фильтр отдельно.
Тогда вы можете проверку сделать:
Я сделал так
Бренды с левой колонки пропали, но те, что над товарами {'my_ms|vendor' | placeholder} перестали работать. Жму и ничего не происходит
здесь подсмотрел
Все теперь фильтрует норм. только при фильтрации url выглядит примерно так
До этого было
Обернуть действительно нужно в элемент с , но это должен быть элемент div, а не form.
Сейчас у вас вся страница стара огромной формой, все hidden инпуты туда попали, перестали работать вложенные формы.
Есть
а есть
Вот первый да, форма, а второй обертка для всех фильтров.
Я, чтобы разнести фильтры в разные части страницы, второй id прописывал едва ли не для body, все получалось.