Как выполнить сортировку по пользовательскому полю в системе управления контентом Битрикс?

У меня возникли трудности с настройкой страницы «в наличии» в интернет-магазине. Я добавил товары на эту страницу путем дублирования с основной категории. Для этого я редактировал категорию товара, зажав клавишу Ctrl, и добавил второй раздел для дубля. В основной категории товары сортируются по полю "Сортировка", но мне нужно, чтобы на странице «в наличии» сортировка осуществлялась по полю "Сортировка 2". Как мне правильно это сделать? <br/> <br/> aviamaf.ru
  • 25 марта 2025 г. 12:44
Ответы на вопрос 3
Чтобы выполнить сортировку по пользовательскому полю в системе управления контентом Битрикс, вам необходимо изменить параметры компонента, который выводит товары на странице «в наличии». В вашем случае, нужно указать, по какому полю производится сортировка.

Вот основные шаги, которые вам следует выполнить:

1. **Откройте настройки компонента**: Перейдите в раздел, где у вас выводятся товары «в наличии», и найдите настройки соответствующего компонента (например, `bitrix:catalog.section`).

2. **Настройте параметры сортировки**: В настройках компонента найдите раздел, отвечающий за параметры сортировки. Вам нужно будет указать, что товары должны сортироваться по полю "Сортировка 2". Для этого в полях сортировки выберите "Сортировка 2" и укажите порядок (по возрастанию или убыванию).

3. **Изменение кода компонента** (если требуется): Если настройки компонента не позволяют задать пользовательские параметры сортировки, вам может потребоваться внести изменения в код компонента. Для этого:
   - Скопируйте компонент в вашу локальную директорию, чтобы не терять изменения при обновлении.
   - Откройте файл, где происходит выборка элементов (обычно это `template.php` или `section.php`).
   - Найдите участок кода, отвечающий за выборку и сортировку элементов, и замените поле сортировки на "Сортировка 2". Пример:
     ```php
     $arSort = array('PROPERTY_SORT2' => 'ASC'); // Добавьте свойство сортировки
     ```

4. **Проверьте вывод**: После внесения изменений проверьте вывод на странице «в наличии». Убедитесь, что товары теперь сортируются по необходимому полю.

5. **Кэширование**: Не забудьте очистить кэш (если используется) после внесения изменений, чтобы они сразу отобразились на сайте. 

Эти шаги помогут вам настроить сортировку товаров на странице «в наличии» по пользовательскому полю "Сортировка 2". Если у вас возникли дополнительные вопросы или трудности, можете обратиться к документации Битрикс или в службу поддержки.
Сортировку надо делать по свойству PROPERTY_SORT если ваше свойство сортировки имеет код SORT.
Страница или раздел? Судя по описанию, раздел. Тогда задачу можно решить, но это будут костыли, которые будут ломаться от малейшего чиха. Поэтому это решение я показывать не буду. 

Я предполагаю, что это проблема XY, и задача изначально ставилась примерно так:
в публичной части в разделе /catalog/ добавить подраздел /catalog/instock/ , в котором вывести товары только в наличии, и отсортированные по другому полю/свойству. Подразделы в /catalog/instock/ не нужны, только список товаров.
При этом в /catalog/index.php - комплексный компонент каталога, настроен на ЧПУ.

Не все знают , что можно создать страницу /catalog/instock/index.php , кинуть туда компонент "Элементы раздела" со своими настройками, своим фильтром - и оно будет работать, и не мешать остальной части каталога.
Похожие вопросы