Телеграм: @camouf_ru Почта: mihail@bazarow.ru

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

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

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

Здесь, обязательно, перед кодом свойства нужно вписать 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 - сортировка по наличию и отсутствию картинок.
Просмотров: 7482 | Комментариев: 1

Комментарии

Внимание! все сообщения проходят премодерацию. Ваше сообщение появится после проверки
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Защита от автоматических сообщений
Загрузить файл
Нажимая кнопку "Отправить", Вы принимаете условия
Политики конфиденциальности и обработки персональных данных
Виталий Агеев
Познавательно!спасибо ) Кстати, было бы здорово увидеть твой урок, как выводить стоимость доставки в карточке товара (аналогично той, которая выводится при оформлении заказа) Или можешь хотя бы расписать, как такое лучше делать?
Имя Цитировать
Поделиться страницей Спасибо, это помогает развивать сайт.
Мой youtube канал. Сюда я выкладываю видео уроки по разработке сайтов и не только. Подписывайтесь, скоро будет серия свежих видео-инструкций:
Перейти на канал
Заметки разработчика

Примерно с 2013-го года пишу, короткие и не очень, заметки по разработке сайтов на Битрикс. Возможно, будут полезны кому-то еще. Во всех заметках есть возможность комментирования и обсуждения. Вы можете задавать уточняющие вопросы прямо там- отвечаю или дополняю заметки по возможности.

Заказaть разработку attention