Фильтрация товаров



  • Обнаружил ошибку, но не знаю как решить.
    В каталоге выбираем фильтрацию любого параметра, если результатов больше 1 страницы и появляется пагинация, то при переходе на вторую страницу фильтр обнуляется и видим все товары на 2 странице а не только то что выбрали.
    Подскажите пожалуйста, кто сталкивался или знает в чем проблема или куда копать.


  • Администраторы

    Покажите как выводите товары и фильтры.



  • @Andchir
    Фильтрация:

    [[*id:is=`8`:then=``:else=`
                        <div id="filters">
                        <div class="pull-right">
                        <button class="btn btn-default btn-sm" data-toggle="tooltip" data-placement="bottom" onclick="tmFilters.resetFilters(); return false;">
                           Сбросить все <i class="fa fa-times" aria-hidden="true"></i>
                        </button>
                        </div>
                        [[tmFilters?
                        &filterOuterTpl=`tm2_filterOuterTpl`
                        &filterTpl=`tm2_filterTpl`
                        &filterNumericTpl=`tm2_filterNumericTpl`
                        &jsMap=`1`
                        &jsScript=`1`
                        &filtersType=`filters_shk`
                        &toPlaceholder=`filters`
                        ]]
                        <form action="[[~[[*id]]]]" method="get"  >
                            <input type="hidden" name="page_id" value="[[*id]]" disabled="disabled" />
                            [[+filters]]
                        </form>
                    </div>`]]
    

    Вывод товара:

    [[!tmCatalog]]
    

    Набор параметров TM:
    0_1473221395928_Безымянный.png


  • Администраторы

    Не хватает постраничной навигации, как выводится (полный код).



  • @Andchir

    <div class="row" id="products">
    [[!tmCatalog]]
    <div class="clearfix"></div>
    </div>
    <div class="clearfix"></div>
     <ul class="pagination ">
     [[+page.nav]]
     </ul>
    

    page.nav расписан в наборах параметров TM в скриншоте постом выше.


  • Администраторы

    И настройки filters.js.



  • @Andchir

    /* ########################################### */
        /**
         * config
         *
         * Настройки
         * 
         */
        config: {
            filters_cont: '#filters',//Селектор оберточного элемента блоков с фильтрами
            sortby: 'pagetitle',//Имя поля сортировки по умолчанию
            sortdir: 'asc',//Направление сортировки по умолчанию
            numeric: ['price', 'weight'],//Имена доп. полей с числовыми значениями
            multitags: ['tags','color','material'],//Имена доп. полей с множественными значениями
            guard_key: '#',//Разделитель для множественных значений
            products_cont: '#products',//Селектор контейнера с выводом товаров
            filter_slider: 'div.range-slider',//Селектор слайдеров (ползунок для числовых значений)
            filter_slider_cont: 'div.filter_slider',//Селектор контейнера со слайдером
            pages_cont1: '#pages',//Селектор контейнера с постраничной навигацией
            pages_cont2: '#pages2',//Селектор второго контейнера с постраничной навигацией. Если нет, оставить пустым.
            active_page_selector: '.current',//селектор номера текущей страницы внутри контейнера (pages_cont)
            filters_type: 'default',//Тип фильтрации. Возможные значения:
                // default (показ числа товаров по каждому фильтру и блокирование пустых вариантов),
                // only_block (только блокирование пустых париантов),
                // none (не показывать цифры и не блокировать)
            filter_delay: 700,//Задержка до отправления запроса на сервер (сбрасывается после каждой отметки фильтра)
            price_field: 'price',//Название поля или TV цены товара
            multi_currency: true,//Мультивалютность включить / выключить (true/false)
            base_url: '/',
            ajax_url: 'assets/components/tag_manager2/connector_fe.php',
            ajax_loader: 'assets/components/tag_manager2/img/ajax-loader2.gif'
        },
        /* ########################################### */```

  • Администраторы

    pages_cont1: '#pages',//Селектор контейнера с постраничной навигацией
    pages_cont2: '#pages2',//Селектор второго контейнера с постраничной навигацией. Если нет, оставить пустым.
    

    Не соответствует вашему HTML коду.

    Нужно сделать так:

     <ul class="pagination" id="pages">
     [[+page.nav]]
     </ul>
    


  • @Andchir Спасибо большое.
    Помогло.
    Появилась идея сделать раздел FAQ - чтобы проще было находить уже решенные вопросы по SHK.



Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.