У меня ситуация следующая. В каталоге есть фильтр tagmanager2 на ajax
У меня идут два блока с фильтрами. Один фильтр сверстан для широких мониторов а другой для мобильной версии
Сам код собственно
<noindex>
<div id="filters" class="container visible-lg">
[[!tmFilters?
&filterOuterTpl=`tm2_filterOuterTpl_select`
&filterTpl=`tm2_filterTpl_select`
&filterNumericOuterTpl=`tm2_filterOuterTpl`
&filterNumericTpl=`tm2_filterNumericTpl`
&jsMap=`1`
&toPlaceholder=`filters`
]]
<form action="[[~[[*id]]]]" method="get">
<input type="hidden" name="page_id" value="[[*id]]" disabled="disabled" />
[[+filters]]
<button id="clear" class="btn btn-danger btn-sm" type="button" onclick="tmFilters.resetFilters(); return false;">Сбросить</button>
</form>
</div>
</noindex>
<!-- КАТАЛОГ -->
<div class="col-xs-12 visible-xs">
<div class="wp-pagenavi text-center">
<ul class="pagination">[[!+page.nav]]</ul>
</div>
</div>
<div id="products">
[[!tmCatalog]]
</div>
<!--ФИЛЬТР НА МОБИЛЬНОЙ ВЕРСИИ-->
<noindex>
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<!--Пагинация для мобильных устройств не Ajax-->
<div class="container text-center visible-xs">
<ul class="pagination">[[!+page.nav]]</ul>
</div>
<!--Пагинация для Декстопов на Ajax-->
<div class="container text-center hidden-xs">
<ul id="pages" class="pagination">[[!+page.nav]]</ul>
</div>
<div class="wp-pagenavi text-center">
<div class="pages"><span class="label label-danger">Страница [[+page]] из [[+pageCount]]</span></div>
</div>
</div>
</div>
<hr class="visible-xs">
<div class="container visible-xs">
<button type="button" class="btn btn-default btn-lg btn-block" data-toggle="collapse" data-target="#demo">
Фильтрация товаров
</button>
<div id="demo" class="panel-collapse collapse">
<div id="filters" class="container ">
[[!tmFilters?
&filterOuterTpl=`tm2_filterOuterTpl_select`
&filterTpl=`tm2_filterTpl_select`
&filterNumericOuterTpl=`tm2_filterOuterTpl`
&filterNumericTpl=`tm2_filterNumericTpl`
&jsMap=`1`
&toPlaceholder=`filters`
]]
<form action="[[~[[*id]]]]" method="get">
<input type="hidden" name="page_id" value="[[*id]]" disabled="disabled" />
[[+filters]]
<button id="clear" class="btn btn-danger btn-sm btn-block" type="button" onclick="tmFilters.resetFilters(); return false;">Сбросить</button>
</form>
</div>
</div>
</div>
</noindex>
Проблема в том, что работает только один фильтр, фильтр который идет второй по структуре HTML «Ниже первого» он не работает почему то
Как решить данную проблему? Я не могу сообразить…
В блоке с мобильной версией я ставил просто " [[+filters]]"
Фильтры выводятся но не фильтруют. Как решить эту задачу?
Павел Романов 18.03.2016 16:50 #
Попробуйте сделать у них класс:
А в assets/components/tag_manager2/js/web/filters.js поменять 21 строку на эту:
Роман 18.03.2016 17:14 #
всего 4 фильтра которые списком. 1,2,3 — это фильтры авто метки
а 4 фильтр с множественными значениями. И первые три фильтра работаю только тогда когда фильтрую сначала 4-тым фильтром, и потом уже только начинают работать фильтр 1.2.3
А так если использовать фильтр 1 или 3 то выводит ошибку
Роман 18.03.2016 17:05 #
Роман 18.03.2016 17:18 #
вот так
— Пробовал, не получилось
Павел Романов 18.03.2016 17:30 #
Но для чего? Элементов с классами может быть на странице несколько, а оформлять Вы их можете независимо.
Роман 18.03.2016 18:39 #
Фильтры где авто метики идут он выдает ошибку которую указал в noResults
они начинают работать тогда, когда поюзал фильтр со множественными значениями
Павел Романов 18.03.2016 19:07 #
Подобные танцы с бубном обходятся в итоге намного дороже покупки mSearch2 с его mFilters2.
Там и настройка гибкая и не важно, в какой категории находятся товары и работает он быстрее. Не надо ничего мудрить с компонентом в админке, настраивать категории, выводимые фильтры и т. д. Набор фильтров для каждой категории можно как настраивать непосредственно в ней (сделать TV, в конце концов), так и вовсе не обращать на это внимания — там все из коробки нормально работает.
Хотите — select-параметры, хотите множественные — все работает без нервотрепки.
Еще и mSearch с Ajax-подсказками и поисковыми синонимами в придачу, поддержка, обновления и все прелести.
Если занимаетесь разработкой на постоянном уровне, то на modstore.pro еще и скидка накопительная — можно до 50% сэкономить.
Прошу прощения, если это воспринимается как оффтоп или реклама, но правда, уже невозможно с глюками TM разбираться )))
Роман 19.03.2016 07:37 #
Вот на моем сайте стоит
Если я заменю
на тот инструментарий который в pdotools
Это будет на много круче? или разницы нет?
Еще у меня стоит MIGX, но я так и не понял для чего конкретно использовать эту штуку. Это получается конструктор полей баз данных?
Павел Романов 19.03.2016 10:24 #
В Evo были предустановленные, в Revo Вы сами собираете нужную конфигурацию.
pdoTools, ИМХО ставить нужно. Там все и работает быстрее и возможностей больше.
Опять же Fenom, который позволяет реализовывать сложную логику в шаблонах или чанках не влияя сильно на производительность.
В Вашем случае, кстати, можно вообще оставить только это:
- Ace
- Collections
- FormIt
- pdoTools
- InstagramWidget
- TinyMCE
- shopkeeper3
CodeMirror и Ace выполняют одну и ту же функцию — подсветку синтаксиса. Только Ace еще и Fenom понимает.MIGX — многогранный инструмент. Он может и с базой работать и реализовывать TV с возможностью ввода множественных данных, когда неизвестно их общее количество (например, галереи товара, слайдеры, ввод характеристик и т. д.).