Привет, читатель.
Сегодня мы поговорим об ajax фильтре для последних версий JBZoo.
Фильтр будет уметь:
- подгружать результаты в нужное место на сайте
- переключать страницы фильтра (пагинация) без перезагрузки
- в момент подгрузки затемнять экран с изображением лоадера
- менять историю браузера
готовить
В прикрепленном архиве Вы найдете файлы, которые правились для этой реализации
- /modules/mod_jbzoo_search/assets/js/filter.js (правка)
- /modules/mod_jbzoo_search/assets/less/filter-ajax.less (новый файл)
- /modules/mod_jbzoo_search/assets/img/loader.svg (новый файл)
- /modules/mod_jbzoo_search/helper.php (правка)
Как Вы видите я поправил хелпер модуля. В нем подключается не только новый стиль для фильтра, но и добавляются параметры для виджета.
$this->_jbassets->widget('#' . $this->getModuleId(), 'JBZoo.Filter', array( 'url' => JRoute::_('index.php?Itemid=' . $this->modParams->get('menuitem', JFactory::getApplication()->input->getInt('Itemid'))).'?', 'updateBlock' => '#yoo-zoo', 'autosubmit' => (int)$this->_params->get('autosubmit', 0), 'ajaxPagination' => 1, 'pagination' => '.uk-pagination', ));
Добавленные параметры:
- updateBlock - селектор блока, куда будут подгружаться результаты фильтра
- ajaxPagination - влючение или отключение ajax пагинации
- pagination - селектор контейнера Вашей пагинации
Правьте эти параметры под себя и обретете счастье.
Влючение ajax фильтра производится из админки чекбоксом "Авто-отправка формы". Установка - распаковкой в корень сайта.
Демо - http://jbzoo.fictionlabs.ru/