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

К примеру нужно найти шину с шириной 205. Компонент должен первые два товара поставить с брендом Michlen а все остальные должны уже шины отсортированы по просмотрам.
Такое только через модификацию результата. Сейчас готовый код не напишу (со временем напряженка), но подсказка:
- В result_modifier (catalog.section) проверяем применен ли фильтр (будет не пустой массив с отбором).
- В результатах фильтра будут ID элементов.
- По ID элемента находим те у которых нужный бренд.
- С помощью array_slice вырезаем их из общего потока.
- C помощью array_map выделяем в отдельный массив.
- Совмещаем с array_merge, при этом массив вырезанных должен быть первым (элементы окажутся вверху)

Это быстрое решение, которое пришло в голову. Но если подумать с часок, может придет что-то более изящное :)
Да, сделал такой вариант. Искал в $arResult['ITEMS'] нужные товары и ставил их вперед. Но этот вариант работает не часто, так как в каталоге есть пагинация и на странице всего 20 товаров и соответственно в $arResult['ITEMS'] их тоже всего 20. А на странице может не оказаться просто таких товаров, а они могут быть на следующей, потому поиск может и не найти товаров.
Видеоуроки по
1С-Битрикс
на моем Boosty канале Видео
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 

Блог-note: заметки разработчика

Подключение SSL на Битрикс виртуальная машина

С первого января 2017 года, наличие безопасного соединения HTTPS становится практически обязательным. Ваши сайты будут з...

Скопировать номер телефона из поля пользователя в телефон для регистрации

Задача, на конкретном сайте: раньше все пользователи регистрировались по стандартному режиму, через логин(e-mail) и паро...

Кастомизация поля input type file, свой внешний вид

Задача: Поле input type="file" предоставляет возможность загрузки файлов на веб-странице. Однако стандартный в...

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

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

Перенос Битрикс сайта с хостинга на хостинг, инструкция

Достаточно часто спрашивают как перенести сайт работающий на 1С Битрикс с одного хостинга на другой, как раз подвернулас...

Показать доступный остаток каждого товара в корзине 1С-Битрикс

Задача: показать остаток каждого товара в корзине 1С-Битрикс, что бы покупатель сразу знал предельное колличество товара...

Наличие на складах в умном фильтре 1С-Битрикс, с автоматическим обновлением

Задача: добавить возможность фильтрации товаров по складам в умном фильтре. Данные должны обновляться автоматически, при...

Изменить размер картинок по ID файла, в 1C-Битрикс

Задача: изменить размер картинок загруженных в элементы инфоблока, для оптимизации их размера и подгонки под содержимое...

Заполнение множественного пользовательского свойства типа "строка" через API

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