Из документации нашел решение :
Но у меня все время создается новый инфоблок, а я хочу, чтобы если есть такой инфоблок то либо ничего не делал, либо обновил его. И сразу бросается в глаза $ID . Скорее всего это ID инфоблока ??? Или нет. Но по-моему если существует инфоблок с именем TEST то не создаем, а обновляем. Отсюда вопрос ... как получить ID инфоблока, зная его имя ?
Код |
---|
CModule::IncludeModule('iblock'); $ib = new CIBlock; $arFields = Array( "ACTIVE" => "Y", "NAME" => "TEST", "CODE" => 'test_c', "IBLOCK_TYPE_ID" => "services", "SITE_ID" => "s1", "SORT" => "666", "DESCRIPTION" => "описание", "DESCRIPTION_TYPE" => "text", ); if ($ID > 0) $res = $ib->Update($ID, $arFields); else { $ID = $ib->Add($arFields); $res = ($ID>0); print_r($ib); } |
Но у меня все время создается новый инфоблок, а я хочу, чтобы если есть такой инфоблок то либо ничего не делал, либо обновил его. И сразу бросается в глаза $ID . Скорее всего это ID инфоблока ??? Или нет. Но по-моему если существует инфоблок с именем TEST то не создаем, а обновляем. Отсюда вопрос ... как получить ID инфоблока, зная его имя ?