bitrix

Распарсить название элемента на параметры. Обновить множественные значения параметров типа "привязка к элементам" и "список".

CModule::IncludeModule('iblock');
$IBLOCK_ID = 4;
$arSelect = Array("ID", "IBLOCK_ID", "NAME", "DATE_ACTIVE_FROM","PROPERTY_*");
$arFilter = Array("IBLOCK_ID"=>$IBLOCK_ID, "ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y");

$res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>9999), $arSelect);
while($ob = $res->GetNextElement()){
    $arFields = $ob->GetFields();
    //$arProps = $ob->GetProperties();
    //pre2($arFields['NAME'].' - '.$arProps['MORE_PHOTO_2']);

    if (substr_count($arFields['NAME'],'подготовк')>0){

//обновление свойства "привязка к элементам"
        $PROPERTY_CODE = "MORE_PHOTO_2";
        $PROPERTY_VALUE = Array(256,258);//добавим переподготовку + мед сертификат
        CIBlockElement::SetPropertyValuesEx(
            $arFields['ID'],
            $IBLOCK_ID,
            array($PROPERTY_CODE => $PROPERTY_VALUE)
        );

//обновление свойства "список"
        CIBlockElement::SetPropertyValuesEx(
            $arFields['ID'],
            $IBLOCK_ID,
            array("CATEGORY" => 26)//profperepodgotovka //Для свойства типа Список следует передавать идентификатор значения свойства
        );
    }
}

Leave a reply