xSort by Sander для DLE

xSort by Sander

xSort by Sander

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


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

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

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

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

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


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

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

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


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


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


Особенности
- Модуль предназначен только для пользователей. Поисковики индексировать такие страницы не будут. "Доработать" это невозможно.
- Выбор фильтра запоминается только для выбранной страницы. Выбрав фильтры в категории "фильмы" и перейдя в категорию "сериалы" все фильтры будут сброшены на значения "по умолчанию". Но при этом вернувшись обратно в категорию "фильмы" все фильтры будут отмечены. Но если выбрать фильтр в категории сериалов и вернуться в фильмы, то будет наоборот - в категории "фильмы" все будет по нулям, а в категории "сериалы" запомнятся выбранные значения.
- Модуль никак не влияет на содержимое и заполнение новостей. Он только сортирует и фильтрует новости на основании тех данных, что указаны в новости.
- Для каждой категории/раздела можно настроить свои блоки. Например в категориях "фильмы" и "сериалы" блок "тип м/ф" совершенно не нужен, поэтому для каждой группы категорий можно настроить свои поля. Это делается через строку подключения:
[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]


+Bonus
Т.к. админки нету, я решил сделать небольшую "лентяйку". Она формирует список всех значений доп.полей в формате конфиг файла.
xSort by Sander


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

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

Купить модуль: http://shop.sandev.pro/post/22.html

Контакты
ICQ: 404-037-556
Skype: Sander8804
E-Mail: olalod@mail.ru

С уважением,
Олег Александрович a.k.a. Sander
Купить модуль
  • Стоимость модуля: $3
  • В комплекте: 1 лицензии
  • Стоимость дополнительной лицензии: $2
Комментарии: (80)
  1. foto
    VIP 13 июля 2016 22:08 #
    Хак будет работать в не раздела категорий?
    Например у меня модуль фильтр по доп.полям стоит. Сначала я выполню фильтр, потом в найденных новостях, отсортировать дальше с помощью данного хака.
    На демо пробовал два раза выбрать: По году (стрелка вверх) По году (стрелка вниз), фильмы сортируются, но всегда первые 2016 год, хотя там есть и 1931 год. Почему в обоих вариантах первые не отображаются с 1931 года и далее по возрастанию или наоборот?

    Мне нужен такой хак под свои нужды. Сортировать по цене: отобразить по убыванию или возрастанию цены.
    0
    1. foto
      Администратор 14 июля 2016 09:53 #
      Не могу сказать с уверенностью насчет работы в фильтре. Зависит от того как он устроен. Если он выводит через стандартный show.short.php, то в теории все должно быть нормально.
      При сортировке по возрастанию, первыми отображаются новости с не указанным годом (не заполненным доп.полем).
      +1
      1. foto
        VIP 13 ноября 2016 19:19 #
        Олег, у меня ваш фильтр (вторая версия)
        0
  2. foto
    Клиент 28 октября 2016 21:36 #
    Здравствуйте.
    В вашем модуле можно сделать сортировку с помощью списка.
    Например:
    <ul>
    <li>1
    <li>2
    </ul>
    0
  3. foto
    Клиент 28 октября 2016 21:42 #
    Цитата: Xaker1493
    Здравствуйте.
    В вашем модуле можно сделать сортировку с помощью списка.
    Например:
    <ul>
    <li>1
    <li>2
    </ul>


    Точнее использовать для сортировки список <ul> место <select>.
    0
    1. foto
      Администратор 28 октября 2016 21:44 #
      Добрый день.
      Я не понимаю смысла вопроса.
      Элементы выбора сортировки и так реализованы с помощью списка ul li, а не select.
      0
      1. foto
        Клиент 28 октября 2016 21:57 #
        Прошу прощение за не грамотно составлены вопрос.
        У меня на сайте есть категория: http://anime-workshop.ru/files/skyrim .
        И мне хотелось, чтобы фильтрация происходила при нажатие на одну из переставленных категорий, а не с помощью раскрывающегося списка.

        И перед покупка хочу узнать - Можно ли с помощью вашего модуля сортировать по нажатие по представленному списку, а не по раскрывающегося списка?
        0
        1. foto
          Администратор 28 октября 2016 22:03 #
          В теории возможно. Там по сути чистый html. На js сделано только появление меню при наведении мышки. Все остальное стили.
          Если вы обладаете достаточным уровнем знаний в html+css, то думаю легко сможете переделать.
          0
  4. foto
    Клиент 29 ноября 2016 09:34 #
    Добрый день!

    Подскажите как сделать кнопку сброса выбранных параметров как на тестовом сайте?
    0
    1. foto
      Администратор 29 ноября 2016 11:06 #
      Чуть позже добавлю в основной архив с модулем.
      UPD: Добавил.
      0
  5. foto
    Посетитель 8 декабря 2016 05:33 #
    Доброго времени суток.

    Выбрал нужную сортировку, все отсортировалось, работает как надо.
    Далее, допустим, зашли на страницу фильма, а когда вернулись на страницу (допустим со всеми фильмами), то сортировка не сбросилась, а осталась?

    И еще, немного не понял, как настроить 2 блока сортировки по 1 параметру.
    Допустим, у меня в категории указывается жанр и тип (фильм/сериал/...), как это организовать?
    Или работает только с доп. полями?
    +1
    1. foto
      Администратор 9 декабря 2016 14:33 #
      Сделал, чтобы при уходе со страницы параметры сбрасывались.
      Но тут вот какая проблема. Если он сидит в 2х вкладках, то при обновлении/переходе во второй, на первой параметры так же будут сброшены.
      Скачайте модуль заново.

      Блок категории может быть только один.
      +4
      1. foto
        Посетитель 9 декабря 2016 17:13 #
        Отлично, спасибо)

        А поводу второго вопроса?)
        +1
        1. foto
          Администратор 9 декабря 2016 17:14 #
          Я ответил и на него.
          Блок категории может быть только один.
          +1
          1. foto
            Посетитель 9 декабря 2016 17:15 #
            Ой, не дочитал.
            Когда увидел, ты уже ответил)

            Спасибо)
            0
  6. foto
    Посетитель 14 декабря 2016 19:06 #
    Модуль крайне полезный, разработчику огромное спасибо!
    0
  7. foto
    Посетитель 7 февраля 2017 15:43 #
    Здравствуйте, подскажите, модуль будет работать если главная и категории на сайте выводятся через тег {custom}?
    0
    1. foto
      Администратор 7 февраля 2017 15:44 #
      Нет.
      0
  8. foto
    Посетитель 26 февраля 2017 08:29 #
    А можно изменить параметры под свои? У меня к примеру сайт о жд и хотелось бы сделать сортировку поездов по "грузовые", "пассажирские" и т.д. это возможно? И еще, можно ли для разных категорий сделать разные параметры? У тепловозов свои параметры, у электровозов другие.
    0
    1. foto
      Администратор 27 февраля 2017 15:10 #
      Параметры изменять под свои - обязательно.
      Для разных категорий можно настроить разные наборы полей/групп.
      +2
  9. foto
    Клиент 5 марта 2017 18:35 #
    Здравствуйте, Олег.
    Я сейчас верстаю новый дизайн для сайта, который у меня на виртуальном хосте. Так вот, если я приобретаю на свой реальный домен, то модуль заработает у меня на виртуалке?
    0
    1. foto
      Администратор 5 марта 2017 18:38 #
      Если имя домена будет таким же как и у реального сайта, то заработает сразу без проблем.
      Если нет, то просто используйте имя тестового домена без точек в имени, тогда выдам ключ под него бесплатно.
      0
      1. foto
        Клиент 5 марта 2017 18:45 #
        Не знал, что можно использовать существующий домен на виртуалке.
        Спасибо
        0
  10. foto
    Посетитель 19 марта 2017 21:54 #
    Sander, скажите, подойдет ваш фильтр под такую ситуацию: есть несколько категорий в которую добавляется новость, к примеру - PC, XBOX 360, XBOX ONE, PS4 также созданы и доп поля под эти категории для вывода на сайте. Есть новости, которым назначаются все эти категории и доп поля. Будет работать фильтр для таких новостей? Но чтобы не перечислять все эти пункты сортировки в фильтре, а были списком при выборе. Нажимаем на платформу(пункт сортировки)->список(доп поля) платформ и выбираем нужную.
    0
    1. foto
      Администратор 19 марта 2017 23:31 #
      Вам следует использовать какой-либо специализированный модуль именно фильтра.
      Данный модуль в первую очередь ориентирован на сортировку, фильтр лишь дополнительный функционал.
      +1
  11. foto
    Посетитель 21 марта 2017 20:54 #
    Цитата: Sander
    Вам следует использовать какой-либо специализированный модуль именно фильтра.
    Данный модуль в первую очередь ориентирован на сортировку, фильтр лишь дополнительный функционал.

    Sander у вас на демо http://kino.sandev.pro/ если взять к примеру стар трек: бесконечность и поставить фильтр по жанру, боевик или фантастика он работает так как и мне хотелось бы. Может я не правильно сформулировал вопрос но нужна такая же работа фильтра...
    0
  12. foto
    Клиент 24 марта 2017 23:32 #
    Почему не работает вот такая комбинация?

    'categoryfilm' => array(
    array('','Категория', 'category', 1),
    array('2','Биография'),
    array('4','Боевик'),
    array('5','Вестерн'),
    array('6','Военный'),
    array('7','Детектив'),
    ),

    'categoryserial' => array(
    array('','Категория', 'category', 1),
    array('8','Биография'),
    array('9','Боевик'),
    array('10','Вестерн'),
    array('11','Военный'),
    array('12','Детектив'),
    ),

    У меня 2 основные категории это Фильмы и Сериалы
    А в них уже подкатегории в виде жанров.
    Как мне разделить сортировку для Фильмов и Сериалов?

    Если сделать вот так:

    'category' => array(
    array('','Категория', 'category', 1),
    array('2','Биография'),
    array('4','Боевик'),
    array('5','Вестерн'),
    array('6','Военный'),
    array('7','Детектив'),
    ),

    То работает нормально, но тогда я не могу сделать такой же блок для сериалов, так как у подкатегорий сериалов уже другие id
    0
    1. foto
      Клиент 24 марта 2017 23:35 #
      Т.е. проблема в том, что если изменить это
      'category' => array(
      на это
      'categoryfilm' => array(
      То перестаёт работать.
      0
      1. foto
        Клиент 24 марта 2017 23:35 #
        Вот так тоже пробовал
        'categoryfilm' => array(
        array('','Категория', 'categoryfilm', 1),
        Всё равно не работает.
        0
      2. foto
        Администратор 24 марта 2017 23:37 #
        блок category может быть только один.
        Во всех остальных случаях имя category будет восприниматься как имя доп.поля.
        0
        1. foto
          Клиент 24 марта 2017 23:39 #
          Спасибо за столь быстрый ответ.
          0
  13. foto
    Клиент 6 апреля 2017 17:52 #
    Здравствуйте! Есть вопрос

    Вот так работает:
    'year' => array(
    array('', 'Year', 'year', 1),
    '2017',
    '2016',
    '2015',
    ),

    Вот так тоже работает, кроме выбора '2017' (в этом случае отображаются все новости):
    'year' => array(
    array('', 'Year', 'year', 0),
    '2017',
    '2016',
    '2015',
    ),

    Скажите, так и должно быть? Спасибо!
    Кэш dle чистил, новости перестраивал - то же самое. Вот ссылка на сайт, если надо: http://deathgrind.xyz
    0
    1. foto
      Администратор 6 апреля 2017 17:54 #
      Модуль платный и техподдержка оказывается только клиентам.
      0
      1. foto
        Клиент 6 апреля 2017 22:59 #
        За такой модуль и $30 не жалко, но есть ещё способы оплатить, кроме WM?
        0
      2. foto
        Клиент 6 апреля 2017 23:20 #
        Все, разобрался. Оплатил. Глубочайше извиняюсь и спасибо!
        0
      3. foto
        Клиент 7 апреля 2017 07:43 #
        Так подскажете, что это за параметр в конце, и почему не корректно работает, если он равняется нулю?

        array('', 'Year', 'year', 0),
        0
  14. foto
    Посетитель 22 июля 2017 00:57 #
    Почему то не работает фильтр, пишет что ни чего не найдено... Обязательно ли новости должны быть обернуты в dle-content, дело в том что у меня в dle-content1, в js сделал соответсвующие правки, но безрезультатно!
    0
  15. foto
    Посетитель 22 июля 2017 01:02 #
    Как выяснилось работает, но после выбора опции, пишет ни чего не найдено, но если обновить страницу то выдает искомые новости.
    0
    1. foto
      Администратор 22 июля 2017 12:50 #
      По закрытому сайту ничего не могу подсказать, нужно смотреть.
      0
      1. foto
        Посетитель 22 июля 2017 14:15 #
        Вопрос решен! Проблема в верстке была, в id был лишний символ. Мод ОТЛИЧНЫЙ!
        0
  16. foto
    Посетитель 29 июля 2017 23:00 #
    Сделал все как в описании, не нажимается на меню. как быть?
    0
  17. foto
    VIP 10 октября 2017 04:02 #
    Олег, модуль умеет вообще сортировать правильно цифры с пробелами По возрастанию и По убыванию.?
    Например, если указываю в дополнительном поле так: 1 650 000 и 1 800 000?
    0
    1. foto
      Администратор 10 октября 2017 23:22 #
      К сожалению нет. В поле должно быть только число без пробелов.
      Допустимо использование только целых и дробных чисел (через точку).
      0
      1. foto
        VIP 11 октября 2017 00:04 #
        Жаль конечно...)
        У меня как раз сайт по продаже недвижимости и цены желательно через пробел указывать, т.к. слитно не очень читабельно будет смотреться 2850000 (2 850 000).
        P.S. Спасибо за перевод в группу!
        0
        1. foto
          Администратор 11 октября 2017 00:06 #
          Но ведь для этого можно использовать JS.
          0
  18. foto
    VIP 10 октября 2017 04:30 #
    Мультивыбор в доп. полях xFields вообще не продается?
    И можно ли тут перевестись в Клиенты? Я у вас ранее покупал какие то модули... Sort-Fields, еще что-то... и штук 30 лицензий к Sort-Fields по 5$ в течение нескольких месяцев...)
    0
  19. foto
    Посетитель 13 ноября 2017 16:11 #
    Добрый день! Есть ли у Вас подобный модуль но чтоб соединял категории между собой, для адалт сайта, допустим имеем ролик который относится к нескольким категориям, пример: надо соединить две или три категории блондинки + большие сиськи + короткие волосы ?
    0
    1. foto
      Администратор 15 ноября 2017 15:46 #
      Добрый день.
      Нет, готового такого модуля нету.
      0
  20. foto
    Гость 23 февраля 2018 11:01 #
    У меня есть доп поля которые заполнены и которые пустые.
    Можно ли с помощью модуля вывести заполнения значения например обозначить их х1
    И не заполненные х2

    Что бы люди могли вывести фильтр заполненного доп поля и не заполненного.
    0
    1. foto
      Администратор 23 февраля 2018 15:23 #
      Нет, подобное невозможно.
      Модуль не рассчитан на прием "пустого" значения.
      0
  21. foto
    Гость 23 февраля 2018 15:38 #
    Окей. Есть у меня 3к записей. В них есть как пустое так и заполненное значения. Можем мы вывести только заполненные значения остальные пусть пропустит.
    0
    1. foto
      Администратор 23 февраля 2018 15:43 #
      Алгоритм фильтра умеет искать только по конкретному значению поля.
      В них есть как пустое так и заполненное значения.

      Если заполненное значение во всех полях одинаковое, то конечно можно. Иначе для каждого значения необходимо будет добавить свой параметр в настройках.
      0
  22. foto
    Гость 21 марта 2018 02:17 #
    Скажите возможно ли реализовать нечто подобное с этим модулем - есть 2 фильтра первый фильтр "марка" второй "модель", возможно ли сделать так что бы в фильтре "марка" я выбираю например Audi, то в фильтре "модель" появляются значения (A4, A5, S8...). А когда я выбираю марку Peugeot то в фильтре модель появляются другие значения (406, 307, boxer, 607...)
    0
    1. foto
      Администратор 23 марта 2018 17:58 #
      Нет, это специализированный функционал под который необходимо писать свой инстрфейс и обработчик.
      Данный модуль для подобного не применим.
      0
      1. foto
        Клиент 9 апреля 2018 06:59 #
        на php 7+ работать будет??
        0
  23. foto
    Клиент 9 апреля 2018 06:59 #
    Хочу купить, смущает Версия PHP: 5.3 - 5.6

    на php 7+ работать будет??
    0
    1. foto
      Администратор 9 апреля 2018 09:56 #
      На 7.1 будет.
      Если нужен 7.2 - сделаю файл под 7.2
      0
      1. foto
        Клиент 10 апреля 2018 08:32 #
        не мне на 7.0 сойдет, спасибо. покупаю тогда
        0
  24. foto
    Клиент 20 апреля 2018 14:56 #
    здравствуйте, пожалуйста обновите модуль до PHP 7.2 и ionCube 10.2
    0
    1. foto
      Администратор 20 апреля 2018 15:40 #
      Готово.
      0
      1. foto
        Клиент 20 апреля 2018 15:48 #
        вы серьезно можно покупать?
        0
  25. foto
    Клиент 20 апреля 2018 17:32 #
    после установки ошибка Parse error: syntax error, unexpected '@', expecting case (T_CASE) or default (T_DEFAULT) or '}' in /var/www/site/data/www/site.ru/engine/engine.php on line 40

    UPD: Вопрос решен в ЛС.
    0
  26. foto
    Клиент 24 мая 2018 00:51 #
    На дле 12.1 этот модуль не работает? Всё сделал по инструкции, но сортировка не происходит.
    0
    1. foto
      Администратор 24 мая 2018 09:25 #
      Работает. На 13.0 тоже работает.
      Техподдержка только в ЛС или по указанным контактам.
      0
  27. foto
    Клиент 3 июня 2018 20:39 #
    Мне нужен этот модуль для того, чтобы в пределах категории пользователи и гости могли отсортировать новости по значению доп. полей. Пока меня интересует одно дополнительное поле типа текст, которое я заполняю вручную в каждой новости. Вот и вопрос: Будут ли значения, которые я пишу вручную для новостей выводиться в фильтре?
    0
    1. foto
      Клиент 3 июня 2018 20:58 #
      И еще вопрос. Можно ли, чтобы сортировка не запоминалась? То есть, пользователь зашел в категорию, отсортировал как нужно, вышел, а потом вернулся и новости были со сброшенным фильтром.
      0
      1. foto
        Администратор 4 июня 2018 20:41 #
        Я так делал, но это оказалось крайне неудобно и вызывает только недовольство у пользователей, почему это фильтр сам сбрасывается.
        0
        1. foto
          Клиент 4 июня 2018 21:42 #
          Мне бы как раз нужно, чтобы фильтр сбрасывался, поскольку будет использоваться только одно дополнительное поле. И не все пользователи будут сортировать новости. После покупки модуля сможете сделать, чтоб он сбрасывался?
          0
    2. foto
      Администратор 4 июня 2018 20:38 #
      В данный момент в модуле, в фильтре используются только вручную введенные значения.
      Есть мысли по автоматизации этого шага, но пока это только в проекте. Нужно будет поработать над этим.
      0
  28. foto
    Посетитель 24 июля 2018 20:28 #
    А какая нагрузка от него?
    0
    1. foto
      Администратор 25 июля 2018 09:00 #
      Как от поиска.
      Пока никто не трогает - нагрузка нулевая.
      При выборе параметров - как при быстром поиске.
      0
  29. foto
    Гость 5 августа 2018 16:05 #
    По тегам может сортировать?
    0
    1. foto
      Администратор 6 августа 2018 09:48 #
      Сортировать - да, но только по первому тегу в списке.
      Фильтровать - нет.
      0
  30. foto
    Посетитель 15 августа 2018 22:50 #
    Sander, не планируется ли сделать ползунок с интервалом по года (к примеру, чтоб вывести фильмы с 2000 по 2018 года) ?
    0
    1. foto
      Администратор 15 августа 2018 22:55 #
      Нет. Это вам нужен полноценный модуль фильтра.
      0
      1. foto
        Посетитель 16 августа 2018 08:52 #
        А есть вообще такой модуль в природе? (от punpun не предлагать))
        0
      2. foto
        Посетитель 16 августа 2018 11:11 #
        И ещё вопрос. Будет ли этот модуль работать на DLE 13 Demo?
        0
        1. foto
          Клиент 16 августа 2018 11:34 #
          На 13 буде працювати, ну ви самі назвали модуль пунпун'а)
          0
        2. foto
          Администратор 16 августа 2018 13:07 #
          Именно на demo вряд ли. Там файлы вроде как закодированы, следовательно не получится внести в них изменения.
          0
          1. foto
            Посетитель 16 августа 2018 14:29 #
            В описании указано что модуль выводится инклудом. Или в файлы движка изменения тоже вносить придётся?
            0
Добавить комментарий
  • Логин
  • E-mail (не обязательно)
Повторите рисунок:
antibot
© Sander-Development. 2009-2018.
При копировании, ссылка на источник обязательна.