Сайт веб-разработчика Николая Семенцова

Партнер компании 1с-битрикс

Массовое создание свойств инфоблоков

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

Естественно создавать эти свойства вручную у меня не было ни какого желания , для того что бы реализовать данную задачу я выполнил такой код в системе администрирования в "Командная PHP-строка"

 // получим все инфоблоки в каталоге
   $resB = CIBlock::GetList(
    Array(),
    Array(
            'TYPE'=>'catalog'
        ), false
    );
    while($ar_res_blo = $resB->Fetch())
    {
        $iblon[] = $ar_res_blo['ID'];
    }
 
 // запустим цикл для создания свойств
 foreach ($iblon as $iblon_id) {
  // сформируем массив для создания свойства
    $arFields = Array(
      "NAME" => "Топ оптовых продаж",
      "ACTIVE" => "Y",
      "SORT" => "98",
      "CODE" => "top_opt",
      "PROPERTY_TYPE" => "L",
      "IBLOCK_ID" => $iblon_id,
      "SEARCHABLE" => "Y",
      "LIST_TYPE" => "C",
      "FILTRABLE" => "Y"
    );
 
    $arFields["VALUES"][0] = Array(
      "VALUE" => "Да",
      "DEF" => "N",
      "SORT" => "100"
    );
 
    $ibp = new CIBlockProperty;
    $PropID = $ibp->Add($arFields);         
 }

Вот и все таким не большим кодом я создал 5 свойств, только изменял массив для свойства в зависимости от его параметров.





Опубликовано: 18 Февраля 2012




Помогла заметка? Жмите кнопки ниже


ВКонтакт Facebook Google Plus Одноклассники Twitter Яндекс Livejournal Liveinternet Mail.Ru





comments powered by Disqus

Партнер 1c-bitrix