Модуль xSort by Sander [ Update ] для Dle

Модуль xSort by Sander [ Update ] для Dle


Замена стандартной сортировки новостей с возможностью сортировать по доп.полям, а так же небольшой фильтр.
Модуль выводится в main.tpl тегом {include file="..."} и выглядит следующим образом:



О сортировке.
Изначальное состояние окна выбора сортировки:
xSort by Sander



При выборе какого-либо пункта перезагрузка контента выполняется на ajax (без перезагрузки страницы). Изначально контент сортируется от большего к меньшему. Выбрав "год", в самом начале будут отображаться новости 2016 года.
После выбора, у кнопка появляется подсветка:



И развернутый вид:



При повторном клике на ту же сортировку, результат выдачи инвертируется, т.е. идет сортировка уже от меньшего к большему.



Примечание: При сортировке по алфавиту, от большего к меньшему сортировка будет развернутая. Т.к. буква "Я" - больше чем буква "А". Для таких случаев в настройках есть параметр реверса с помощью которого можно развернуть изначальную выдачу.
Все пункты сортировки легко можно поменять, удалить или добавить.
Список сортировок в конфиге


О фильтре.
Пользователь может выбрать только по одному пункту в каждом блоке. Вот к примеру боевик 2015 года отсортированный по рейтингу кинопоиска:



Выбрать одновременно 2 пункта в одном блоке - невозможно. Чтобы можно было выбрать, скажем "боевик и вестерн" - необходимо будет создать 2 блока с перечнем жанров. В одном блоке можно выбрать только один пункт. Изменить или "доработать" это нельзя.

Рассмотрим вариант разделения пунктов выборки значений одного поля по разным блокам.
У меня в поле "жанр" помимо жанров, так же указывается тип мультфильма: "мультфильм" или "аниме".
Например в фильме "Зверополис" в поле жанр указано: "боевик, комедия, мультфильм, приключения, семейный"
Таким образом можно выбрать 2 значения жанра: мультфильм и боевик:
xSort by Sander

Фильтр и сортировка работают в пределах просматриваемой страницы. Т.е. в категории "Сериалы" будет выполняться фильтр только среди сериалов.
Например - русский сериал мелодрама 2016 года:


Так же фильтр и сортировка могут работать на страницах поиска по доп. полям (не путать со стандартным поиском, там не работает).
Например мы хотим посмотреть фильм где снимались одновременно Шварценеггер и Сталлоне. Для этого открываем страницу /xfsearch/Арнольд+Шварценеггер/ и в фильтре выбираем Сталлоне, в результате получим:


Особенности
- Модуль предназначен только для пользователей. Поисковики индексировать такие страницы не будут. "Доработать" это невозможно.
- Выбор фильтра запоминается только для выбранной страницы. Выбрав фильтры в категории "фильмы" и перейдя в категорию "сериалы" все фильтры будут сброшены на значения "по умолчанию". Но при этом вернувшись обратно в категорию "фильмы" все фильтры будут отмечены. Но если выбрать фильтр в категории сериалов и вернуться в фильмы, то будет наоборот - в категории "фильмы" все будет по нулям, а в категории "сериалы" запомнятся выбранные значения.
- Модуль никак не влияет на содержимое и заполнение новостей. Он только сортирует и фильтрует новости на основании тех данных, что указаны в новости.
- Для каждой категории/раздела можно настроить свои блоки. Например в категориях "фильмы" и "сериалы" блок "тип м/ф" совершенно не нужен, поэтому для каждой группы категорий можно настроить свои поля. Это делается через строку подключения:
[category=1,2]{include file="....php?fields=year,genre,actors,director,strana,oscar,hd,ru"}[/category]
[not-category=3,4,5]{include file="...."}[/not-category]




Демо: http://kino.sandev.pro/

Информация
Стоимость модуля 3wmz
Лицензия выдается под 1 сайт.
Стоимость дополнительной лицензии: 3wmz
Для работы модуля - требуется ionCube Loader.
Версия DLE: 9.6 и старше.
Версия PHP: 5.3 - 5.6

Внимание! У Вас нет прав для просмотра скрытого текста.
Внимание! Данный материал предоставлен сайтом исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Наш Тelegram
Подписка залог успеха ;)
Бесплатный игровой хостинг
Только для жителей Украины
3 посетителя на сайте. Из них:
Гости2
Роботы1
Список пользователей
juliebrAcisk Был(a) в сети 56 минут назад
Onfine Был(a) в сети 57 минут назад
Irinecs Был(a) в сети 1 час назад
Irinava Был(a) в сети 1 час назад
Igorcmc Был(a) в сети 2 часа назад
Kevinloyar Был(a) в сети 2 часа назад
pollfank Был(a) в сети 2 часа назад
Irinmxj Был(a) в сети 3 часа назад
Iringps Был(a) в сети 3 часа назад
Svetlanagnp Был(a) в сети 3 часа назад
Svetlanajst Был(a) в сети 3 часа назад
Igorpip Был(a) в сети 3 часа назад
Igorfcw Был(a) в сети 3 часа назад
VikawoHax Был(a) в сети 4 часа назад
kristywpuT Был(a) в сети 4 часа назад
Svetlanazxd Был(a) в сети 4 часа назад
Svetlanairr Был(a) в сети 4 часа назад
Igorozv Был(a) в сети 5 часов назад
Igorcxp Был(a) в сети 5 часов назад
Leonxsj Был(a) в сети 6 часов назад
Svetlanaohg Был(a) в сети 6 часов назад
Svetlanajzt Был(a) в сети 6 часов назад
Igorkgv Был(a) в сети 7 часов назад
Leonzmx Был(a) в сети 7 часов назад
Svetlanaktk Был(a) в сети 7 часов назад
Leonpvn Был(a) в сети 8 часов назад
Svetlanaosk Был(a) в сети 8 часов назад
MinnieNeoms Был(a) в сети 8 часов назад
Julinxc Был(a) в сети 8 часов назад
Julioks Был(a) в сети 8 часов назад
bargopik Был(a) в сети 9 часов назад
Leondvx Был(a) в сети 9 часов назад
Leonzfw Был(a) в сети 9 часов назад
Julirkb Был(a) в сети 10 часов назад
Juligiv Был(a) в сети 10 часов назад
ManuelTielt Был(a) в сети 15 часов назад
RenkfardPrody Был(a) в сети 15 часов назад
UPato38 Был(a) в сети 17 часов назад
helorefasxbal Был(a) в сети 19 часов назад
Patrickinfit Был(a) в сети 20 часов назад
agogerug Был(a) в сети 20 часов назад