Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

необычная сортировка ciblockelement getlist

00 голосов
7
мне надо чтобы получился список элементов в определнном порядке.

у меня есть массив в котором по порядку находятся значения ID.
например у меня массив: $a = array(5,6,1,2,3,6,7); //Id элементов

мне надо чтобы метод ciblockelement::getlist сформировал список эелментов в таком порядке.
есть способы сделать это?
спросил 06 Авг, 13 от FOOLKS (520 баллов)

7 Ответы

00 голосов
update. очень надо!!
ответил 06 Авг, 13 от FOOLKS (520 баллов)
00 голосов
Если массив не изменяется, можно создать дополнительное поле и проставить сортировку по нему.
Если изменяется - перед подключением компонента написать код, который будет проставлять сортировку для элементов через Update.
или реализовать на php (постраничную навигацию в таком случае формировать через InitFromArray)
ответил 09 Окт, 13 от unik (2,560 баллов)
00 голосов
а другие способы? неужели нет? допустим если в $arfilter записать "ID"=>array(5,2,4,6,1,32) и каким-то образом убрать сортировку по возрастанию по умолчанию?
ответил 08 Янв, 14 от FOOLKS (520 баллов)
00 голосов
Вряд ли, тут нужно исходить из того что сортировка формируется на уровне SQL запроса
Код
ORDER BY поле

Если в фильтре записать "ID"=>array(5,2,4,6,1,32) Тогда можно через php переформировать массив в result_modifier
ответил 26 Апр, 14 от unik (2,560 баллов)
00 голосов
дело в том что мне нужен не массив. а именно объект cdbresult который формируется методом ciblockelement::getlist
ответил 21 Авг, 14 от FOOLKS (520 баллов)
00 голосов
А чем вам не нравится дополнительное поле в котором можно проставить нужную сортировку?
ответил 26 Дек, 14 от unik (2,560 баллов)
00 голосов
Цитата
Андрей Антипов пишет:
А чем вам не нравится дополнительное поле в котором можно проставить нужную сортировку?

К тому же такое поле уже существует :)
ответил 15 Апр, 15 от Run (1,300 баллов)

Похожие вопросы

0 голосов
6 ответов
спросил 04 Сен, 13 от MAGKILLER (120 баллов)
0 голосов
1 ответ
0 голосов
3 ответов
спросил 07 Март, 14 от aisigylka (100 баллов)
0 голосов
1 ответ
0 голосов
0 ответов
спросил 07 Май, 14 от IRISH (100 баллов)