RSS
Добавить все свойства инфоблока в умный фильтр одним разом
 
Добавить все свойства инфоблока в умный фильтр одним разом

Если у вас достаточно много свойств, в инфоблоке с товарами, например: больше 1000-чи, после интеграции с 1С или импорта из файлов поставщика. И необходимо добавить все свойства в умный фильтр. Поможет эта заметка.
 
Здравствуйте, Михаил.
А как в эти условия добавить исключения свойств ?
Есть свойства которые не нужны в умном фильтре.
 
Вот по этому методу почитайте
https://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockproperty/getlist.php
Можно использовать поля свойств в фильтре.
Например: PROPERTY_TYPE => array(S, L)
Тогда, для добавления в фильтр отберутся только с типом "Строка" и "Список"

Доп запросом, можно получить параметр HINT (описание свойства) что-то написать в это поле, у не нужных свойств и исключить их условием
if (empty($arProperty['HINT']))  
Изменено: Михаил Базаров - 8 мая 2020 07:26:01
 
У нас 1500 свойств и все типа строка и список (прилетают из 1с). С отбором property_type=>arrays(S,L) не получится, а описания свойств почему то затираются при обмене. А ваш метод в статье хотел использовать чтобы при очередном обмене не выставлять потом для новых свойств признак присутствия в фильтре
 
сделал вот так:
Код
//Выводим свойства в умный фильтр

if (CModule::IncludeModule('iblock')) {
    $properties = CIBlockProperty::GetList(
        Array("sort" => "asc", "name" => "asc"),
        Array("ACTIVE" => "Y", "IBLOCK_ID" => ID-инфоблока)
    );
    while ($prop_fields = $properties->GetNext()) {
      $propId = $prop_fields['~ID'];
//проверяем заполнение описания свойства для исключения из списка фильтра
      if(!empty($prop_fields['HINT'])):
        $arFields = Array('SMART_FILTER' => 'N', 'IBLOCK_ID' => ID-инфоблока);
      else:
        $arFields = Array('SMART_FILTER' => 'Y', 'IBLOCK_ID' => ID-инфоблока);
      endif;

      $addToSmart = new CIBlockProperty();
      $addToSmart->Update($propId, $arFields);
    }
}
Читают тему (гостей: 1)
Поделиться: Спасибо, это помогает развивать сайт:
Ваша реклама в этом месте: 5 000 руб. / мес, сквозная по всему блогу.

Заметка в блоге: 5000 рублей. Остается на всегда. До 3-х индексируемых ссылок.
Ссылка в уже существующей записи блога или видеораздела: 7000 рублей. Остается на всегда. До 2-х индексируемых ссылок.

Просьба писать на mihail@bazarow.ru
Мой youtube канал.

На нем, уже много видеоуроков по 1С-Битрикс. Как одиночные видео так и серии видеоуроков Перейти на канал

Стоимость разработки сайта

Я не оцениваю работу в часах, так как в итоге, Вы все равно захотите узнать общую стоимость и срок выполнения.

При оценке проекта или работ я сразу называю стоимость и срок выполнения. Стоимость, срок и объем работы подлежат обсуждению только по взаимной договоренности сторон.
Ноутбук
Узнать точную стоимость разработки сайта или приложения: Для этого, достаточно, как можно подробнее, заполнить вот этот опросник: Скачать опросник и выслать на электронную почту mihail@bazarow.ru.
После ознакомления, смогу задать уточняющие вопросы и оценить проект по срокам и стоимости.
Решения на битрикс

Магазин, на базе готового решенияот 35 900 рублей / от 3 до 5 дней

В стоимость входит: Подбор решения из более 200-от готовых сайтов, под Вашу задачу. Полный запуск сайта на сервере или хостинге, со всеми настройками. Инструкции по работе с готовым решением. Базовая СЕО оптимизация. Запуск готового сайта за 3-4 дня. Небольшие доработки под задачу.

Авторизация

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