Меню
RSS
Свойство "Список" в умном фильтре, Свой фильтр
 
Добавляю фильтр для компонента news.list
Хочу вывести свойство "SUBJEKT" типа список:

<select name="<?= $arResult['ITEMS']['SUBJEKT']['INPUT_NAME'] ?>">
   <option>Выберите</option>
   <? $i = 0;
   foreach ($arResult["PROPERTIES"]["SUBJEKT"]["VALUE"] as $arRazmer): ?>
       <option><?= $arRazmer ?></option>
   <? endforeach; ?>
</select>
Но в выпадающем списке ничего нет, почему?
 
Не правильно перебираете список, нужно вида
Код
<? foreach ($arResult['ITEMS'] as $arItem){?>
    <?foreach ($arItem["PROPERTIES"]["SUBJEKT"]["VALUE"] as $arRazmer){?>
            Размер: <?echo $arRazmer?> <br>
    <?}?>
<?}?>
 
Цитата
написал:
Не правильно перебираете список, нужно вида
Код
<? foreach ($arResult['ITEMS'] as $arItem){?>
    <?foreach ($arItem["PROPERTIES"]["SUBJEKT"]["VALUE"] as $arRazmer){?>
            Размер: <?echo $arRazmer?> <br>
    <?}?>
<?}?>
 
Все также пусто.  
Изменено: Михаил Базаров - 25.09.2023 09:59:25
 
Попробуйте так, свойство должно быть выбрано для показа в списке элементов.
Код
<? foreach ($arResult['ITEMS'] as $arItem){?>
    <?foreach ($arItem["DISPLAY_PROPERTIES"]["SUBJEKT"]["VALUE"] as $arRazmer){?>
            Размер: <?echo $arRazmer?> <br>
    <?}?>
<?}?>

Если не поможет: надо разбираться на месте, может быть каких-то данных не хватает
Изменено: Михаил Базаров - 25.09.2023 10:12:24
 
Может я что-то не так делаю?
- добавил свойство типа "список", назвал его "SUBJEKT"  - заполнил его
- добавил на страницу компонент "Новости"
- в настройках компонента выбрал "Показывать фильтр", указал "arrFilter"
- в шаблоне компонента catalog.filter/default/template.php ввожу Ваш код


Код
<select>
   <option>Выберите</option>
   <? foreach ($arResult['ITEMS'] as $arItem){?>
    <?foreach ($arItem["DISPLAY_PROPERTIES"]["SUBJEKT"]["VALUE"] as $arRazmer){?>
            <option><?echo $arRazmer?></option>
    <?}?>
<?}?>
</select>
И ничего, пустой select!
Что я делаю не так???
Изменено: Михаил Базаров - 25.09.2023 16:52:26
 
У catalog.filter уже должен быть свой набор $arResult с ним и надо не работать, не пытаясь получить его от элементов.

В итоге в параметр arrFilter должен попасть массив с ID отобранных элементов и он сам передасться дальше по коду, комплексного компонента новостей.
Изменено: Михаил Базаров - 25.09.2023 16:55:45
Читают тему
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 
Поблагодарить и поддержать:
Или подписаться на boosty канал: Видео на Bst

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

Получение местоположений через API Битрикс c поиском по select.

Если нужно получить список городов из модуля "Местоположения" можно воспользоваться API Битрикс. Данные местоположения м...

Настройка выгрузки товаров в Яндекс Маркет с сайта Битрикс

Настройка выгрузки в Яндекс маркет в формате yml, выполняется достаточно просто, кроме одной заморочки: в типовой постав...

Фотогалерея на базе компонента новостей, с fancybox.

Это заметка обновление к очень старой, уже имеющейся на сайте. Сделаем что-то типа фотогалереи на базе встроеннного в би...

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

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

Переключатель валюты в каталоге 1С-Битрикс

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

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

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

Создание блога с комментариями, оценками и просмотрами на сайте с 1С-Битрикс

Если на вашем сайте требуется создание раздела с блогом или новостями, статьями. Записям в которых, посетители смогу ста...

Создание мобильного приложения на cordova, для любого сайта.

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

Удалить половину элементов инфоблока с помощью API

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