Последний раз о произвольной сортировке в Битриксе. Сортировка элементов в битрикс


Сортировка элементов по индексу сортировки значений типа список

Внутри любого компонента есть заранее заложенные поля для сортировки элементов. Можно сортировать элементы в разных направлениях по этим полям:

Однако возможна и сортировка по произвольным значениям. Например по свойству типа список. Просто выбираем параметр "Другое" в выпадающем списке и вписываем код свойства, по которому нужно сортировать.

Здесь, обязательно, перед кодом свойства нужно вписать property_ в начало поля.

Но, не всегда все очевидно. Предположим, что у нас есть свойство типа список c кодом ATT_TIP_ELEMENTA: просто вписываем property_ATT_TIP_ELEMENTA и все эементы отсортируются по названию элемента списка в алфавитном порядка.

Но мы хотим не по алфавиту, а по сортировке внутри значений свойства. В моем случае, есть несколько значений для свойства список и каждому из них проставлена сортировка.

Казалось бы, если распечатать массив $arResult для компонента каталог (или новости, это не важно), сортировка свойств хранится в поле VALUE_SORT и в параметры сортировки нужно вписывать property_ATT_TIP_ELEMENTA_value_sort

Но нет! Для этой настройки нужно использовать propertysort_ATT_TIP_ELEMENTA. И тогда все сработает.

Разновидности сортировок:

И приложу несколько примеров сортировки для разных режимов использования. Взято из официальной документации Битрикc:

camouf.ru

Сортировка элементов в Битрикс Видео

Фильтр элементов любых динамических данных в Битриксе

4 г. назад

В этом видеоуроке мы рассмотрим технически сложную тему -- как настроить любой компонент Битрикса, который...

Сортировка элементов в инфоблоке

7 г. назад

С помощью сортировки можно управлять списком элементов по типу рейтингов.

Настройка СПИСКА ЭЛЕМЕНТОВ (1С БИТРИКС). Урок 4.7 - основы по управлению сайтом.

2 г. назад

В данном видео покажу как настроить отображение списка элементов в административной части сайта на 1С-Битр...

41. Битрикс - Добавление нового элемента + свойства (API)

3 г. назад

http://dimos.ru - блог игродела/веб-разработчика (cоветы, уроки, обмен опытом) https://vk.com/webdev_dimos - моя группа Вконтакте.

Adobe Muse, Урок 6 (Блок 1) - Слои. Часть 1. - Сортировка элементов в одном слое

1 г. назад

Бонусы для подписчиков - https://expls.com/subscribe-expls В этом уроке мы разберем что такое слои и как работает сортировк...

Фильтр списка элементов

1 г. назад

Фильтр списка элементов.

Битрикс. Вывести множественное свойство типа строка в виде select

10 мес. назад

Вывести множественное свойство типа строка в виде select.

Возможности в РЕЖИМЕ ПРАВКИ (1С-БИТРИКС). Урок 3.1 - Контент менеджер

2 г. назад

Порой стоят задачи где без режима правки в системе 1С-Битрикс не обойтись, это экономит и время на редактиро...

11. Битрикс - Базовый вывод списка элементов ИБ

3 г. назад

http://dimos.ru - блог игродела/веб-разработчика (cоветы, уроки, обмен опытом) https://vk.com/webdev_dimos - моя группа Вконтакте.

Сортировка товаров в каталоге интернет магазина

5 г. назад

Пошаговый план по созданию сайта: https://webformyself.com/hivideo/ Создавая интернет магазин всегда необходимо создава...

Битрикс умный фильтр: Моментальная фильтрация

12 мес. назад

На сайте, добавлены моменты, если параметров нет https://camouf.ru/blog-note/5933/ Как включить штатную фильтрацию на AJAX...

Размещение изображения. Часть 3. 1С-Битрикс (37/49)

6 г. назад

http://www.teachvideo.ru/catalog/29 - еще больше обучающих роликов об администрировании и разработке сайтов ответят на...

«ТОВАРЫ» в 1С-Битрикс - Урок 8. (свойства, каталог, цена, количество, импорт, список, страница) -.

4 г. назад

Что то не понятно? Я готов проконсультировать ТЕБЯ в своей группе: http://vk.com/bitrix_spb Мой сайт: http://lyrmin.ru/ Вы...

7. Урок-Производительность -Сортировка в GetList, видео 8/16

3 г. назад

Курс №3 - Расширенные технологии и производительность http://academy.1c-bitrix.ru/training/course/5863/ Материалы, задание и...

Как управлять в ТАБЛИЦЕ ЭЛЕМЕНТАМИ (1С БИТРИКС). Урок 4.6 - обучение по управлению сайтом

2 г. назад

Таблица элементов – является основным средством для группировки и отображения информации в системе. В...

1.2 Урок - Получение связанных элементов – Часть 1, видео 1/4

3 г. назад

Курс №2 - Основные технологии и расширение типовых возможностей системы http://academy.1c-bitrix.ru/training/course/5863/ Матери...

Настройка элементов 1С-Битрикс (19/49)

6 г. назад

http://www.teachvideo.ru/catalog/29 - еще больше обучающих роликов об администрировании и разработке сайтов ответят на...

4k-video.ru

Дмитрий Новиков - Последний раз о произвольной сортировке в Битриксе. Публикация в категории "1C-Битрикс"

Это задача, которая возникает не часто, как правило при доработке существующих сайтов. Когда в ТЗ встречается пункт «сделать сортировку по следующим параметрам:…» - понимаешь, что вроде бы решение типовое, и делал такое уже много раз, но почему-то каждый раз приходится заново вспоминать, как это делается, анализировать структуру каталога, проверять нужные свойства на доступность… В общем, пора поставить точку в этом вопросе.

Как правило, мы имеем дело с комплексным компонентом каталога. Заходим в шаблон, находим там section.php – на этой странице и будем работать. Если же используется простой компонент «элементы раздела» - тогда ищем страницу, на которой расположен код компонента. В сам компонент мы заглядывать не будем – будем работать только с его параметрами.

А в параметрах компонента нас ждут следующие чудесные строки (для комплексного каталога):

"ELEMENT_SORT_FIELD" => $arParams["ELEMENT_SORT_FIELD"], "ELEMENT_SORT_ORDER" => $arParams["ELEMENT_SORT_ORDER"],

Это параметр для сортировки, и для ее направления. ELEMENT_SORT_ORDER может равняться «asc» - сортировка по возрастанию, и «desc» - сортировка по убыванию. Это достаточно простой аспект. А вот то, по чему мы сортируем список товаров – уже интереснее.

Сортировка по цене:

$arParams["ELEMENT_SORT_FIELD"] = "catalog_PRICE_1";

Сортировка по популярности:

$arParams["ELEMENT_SORT_FIELD"] = "SHOW_COUNTER";

Сортировка по свойству:

$arParams["ELEMENT_SORT_FIELD"] = "PROPERTY_ХХХ"; где ХХХ – ID свойства.

Задача сводится к тому, чтобы задать для сортировки два параметра – sort field и order. Задать из можно по вашему усмотрению, например через проверку GET-параметров, а в начале страницы разместить ссылки с этими GET-параметрами. Или через POST и отправку формы. Или через AJAX… В общем, как вам больше нравится.

А что, если клиент просит вас сделать еще и второстепенную сортировку? Например, главная сортировка по параметру и дополнительная – по имени (в прямом или обратном алфавитном порядке). Тогда приходят на помощь две дополнительные строки, крайне похожие на первые:

"ELEMENT_SORT_FIELD2" => $arParams["ELEMENT_SORT_FIELD2"], "ELEMENT_SORT_ORDER2" => $arParams["ELEMENT_SORT_ORDER2"],

Их чаще всего нет в списке параметров компонента, но если их добавить – они обработаются корректно. Принцип работы тот же – в sort field 2 и order 2 подставляем нужные нам значения.

Бывает ли ELEMENT_SORT_FIELD3 и ELEMENT_SORT_ORDER3, 4, 5 и т.д. – не проверял. Да и задач таких не возникало, двух сортировок обычно хватает за глаза в любом каталоге.

dmnv.ru


Prostoy-Site | Все права защищены © 2018 | Карта сайта