Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Стол заказов » Сортировка в custom по значению доп. поля

Сортировка в custom по значению доп. поля


 Носок в стакане    Стол заказов    1445    9 комментариев

Нужно сделать сортировку в теге custom по значению выбранного доп. поля или нескольких доп.полей.
{custom ...... order="xf_xxxxx||xf_yyyy" sort="desc"}

Если в поле XXXX значения совпали, то сортирует по YYYY.

надеюсь понятно объяснил.

9 комментариев

Носок в стакане
Юзер

Носок в стакане - -

Я не поиск имел в виду, а именно сортировку уже найденных новостей.
Параметр order. Стандартно в нем доступны лишь значения: date, editdate, rating, reads, comments, title, rand и lastviewed. Вот сюда и надо добавить доп. поля.

dj-avtosh
PHP-developer

dj-avtosh - -

вряд ли это реализуемо, по крайней мере будет слишком тормозить. только если joinить на _xfsearch (там только перекрестные поля) и то будет лагать.

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

Snake
Юзер

Snake - -

Тоже нужно такое.
Говорят blockpro решает эту проблему, но глядя на его инструкцию у меня мозг взрывается и лень заставляет закрыть побыстрее вкладку ибо ещё и на сайте придётся кучу всего под него переделывать.

Носок в стакане
Юзер

Носок в стакане - -

Да там все понятно, на самом деле. Надо только в документацию подглядывать.
Мне он не подошел т.к. выбирает новости не точно.
Т.е. если нужно отобрать новости со значением ТОЛЬКО "красный" он отберёт все новости где в поле встретилось значение "красный" не взирая что радом стоит "синий" и его отбирать не нужно. Поэтому приходится использовать модифицированный custom с доработкой от LazyDev, а сортировать скриптами. Та еще бандура получается.

lutskboy
Эксперт

lutskboy - -

по одному можно сделать. а по двум как то жестко

Носок в стакане
Юзер

Носок в стакане - -

Ну хоть по одному

dj-avtosh
PHP-developer

dj-avtosh - -

Примерно так:

SELECT p.* FROM dle_post p 
LEFT JOIN dle_xfsearch dx ON (p.id = dx.news_id AND dx.tagname='TAG_NAME')
WHERE p.approve = 1  AND p.category regexp '[[:<:]](CATEGORY_ID)[[:>:]]'
ORDER BY dx.tagvalue DESC;

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

Snake
Юзер

Snake - -

А как использовать? В какой файл это вставлять?

наверх