Меню

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

Просмотров: 14726

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

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

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

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

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

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

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

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

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

  • catalog_ - по полю CATALOG_FIELD (может быть PRICE - цена или CURRENCY - валюта) из цены с типом PRICE_TYPE (например, catalog_PRICE_1 или CATALOG_CURRENCY_3). Сортировка должна иметь формат: CATALOG_(PRICE или CURRENCY)_ID-типа-цены.
  • catalog_QUANTITY - сортировка по количеству.
  • PROPERTY_. - по значению поля элемента указанного в качестве привязки. PROPERTY_CODE - мнемонический или символьный код свойства типа привязка к элементам. FIELD может принимать значения: ID, TIMESTAMP_X, MODIFIED_BY, CREATED, CREATED_DATE, CREATED_BY, IBLOCK_ID, ACTIVE, ACTIVE_FROM, ACTIVE_TO, SORT, NAME, SHOW_COUNTER, SHOW_COUNTER_START, CODE, TAGS, XML_ID, STATUS
  • PROPERTY_.PROPERTY_ - по значению свойства элемента указанного в качестве привязки. PROPERTY_CODE - мнемонический или символьный код свойства типа привязки к элементам. PROPERTY_CODE2 - код свойства связанных элементов.
  • HAS_PREVIEW_PICTURE и HAS_DETAIL_PICTURE - сортировка по наличию и отсутствию картинок.
Виталий Агеев 19.07.2018
Познавательно!спасибо ) Кстати, было бы здорово увидеть твой урок, как выводить стоимость доставки в карточке товара (аналогично той, которая выводится при оформлении заказа) Или можешь хотя бы расписать, как такое лучше делать?
Гость 05.07.2024
Отлично!
Опечатка есть: "МОжно сортировать".
Текст дублируется в начале: "возможна и сортировка по произвольным значениям. Например по свойству типа список"

Стоимость и сроки разработки сайтов и приложений

Окончательная стоимость и сроки разработки сайта формируются после обсуждения деталей на этапе заказа. Как правило, они редко выходят за обозначенные ниже рамки.

Интернет магазин: разработка с нуля от 350 000 руб.
от 4-х недель

Cоздание интернет-магазина на 1С-Битрикс. Разработка с нуля, оптимизация кода под конкретный проект и требования. Реализация любого функционала без ограничений готовых решений.

Интернет-магазин на готовом решении от 100 000 руб.
от 7-ми дней

Готовое решение — вариант для тех, кто не хочет тратить много средств на индивидуальный проект, и не имеет серьезных требований к сайту. Запускается на одном из 200-та (на ваш выбор) готовых решений.

Мобильное приложение от 400 000 руб.
от 1-го месяца

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

Опросник на разработку. После ознакомления, задам уточняющие вопросы и оценю проект по стоимости и срокам разработки.