Стояла однажды задача создать несколько одинаковых свойств у инфоблоков каталога их там было порядка 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
|
|
|