Меню
RSS
D7 выборка элементов с учётом подсекций
 
Добрый день! Нужно сделать выборку элементов, компонент написан на D7. Как можно прописать в setFilter? искала, но не найду пока никак((

Код
private function getElements(){
        $this->initPagination();
        if($currentSections = $this->findSections()){
            $this->setFilter(array_merge($this->filter, ['@IBLOCK_SECTION_ID' => $currentSections]));
        }
        $queryElements = $this->queryCatalog();
        $count = $queryElements->getCount();
        $this->pageNavigation->setRecordCount($count);
        [$prevLink, $nextLink] = $this->prepareLinkPagination(
            $this->pageNavigation->getCurrentPage(), $this->pageNavigation->getPageCount()
        );
        $pg = [
            'page_current' => $this->pageNavigation->getCurrentPage(),
            'page_size' => $this->pageNavigation->getPageSize(),
            'pages' => $this->pageNavigation->getPageCount(),
            'prev_link' => $prevLink,
            'next_link' => $nextLink,
        ];
        $items = $queryElements->fetchAll();
        $itemsId = array_map(fn($item) => $item['ID'], $items);

        $this->prices = $itemsId ? ProductPrice::getProductPrices($itemsId) : [];
        foreach ($items as &$item){
            $item = $this->prepareItem($item);
        }

        return [
            'items' => $items,
            'count' => $count,
            'pagination' => $pg
        ];
    }
Изменено: Михаил Базаров - 13.09.2023 11:46:16
Читают тему
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 
Поблагодарить и поддержать:
Или подписаться на boosty канал: Видео на Bst
Сайт в режиме тех обслуживания

Сообщения форума и комментарии не сохраняются

Возвращайтесь после 12-го января

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

Сравнение двух типов цен для иммитации системы скидок, в Битрикс

Встала задачка, иммититровать систему скидок в интернет магазине на Битрикс. Из 1С-УТ, на сайт, выгружается два типа цен...

Обновление 1С-Битрикс до поддержки версии PHP 8.3 с PHP 7

Задача: обновить устаревший сайт на платформе 1С-Битрикс, который не получал обновлений уже более 4 лет и работает на PH...

Установка поиска Sphinx на Ubuntu 22.04 для 1С-Битрикс

Задача: установить и сконфигурировать поиск Sphinx под управлением Ubuntu 22.04 и панели управления HestiaCP для использ...

Дополнительные параметры в меню Битрикс

Иногда нужно присвоить какой-то функционал к конкретному пункту меню в битрикс. Например открывать ссылку в новом окне и...

Вывести компонент новостей на страницу в Битрикс

Посмотрел Яндекс метрику на свой сайт, и решил что буду частенько писать сюда именно то, что ищут люди. Итак за последню...

Дополнительные опции/услуги, добавляемые в корзину, в карточке товаров

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

Композитный сайт на 1С-Битрикс

Для новых клиентов: Все новые проекты будут включать в себя применение технологии "Композитный сайт" - данная услуга уже...

Заполнить инфоблок брендов из свойства инфоблока с товарами

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

Ajax форма обратной связи, реализация в битрикс

Иногда, на сайте требуется создать форму обратной связи, которая будет писать все данные в инфоблок. Способов реализации...