Документация для разработчиков
Темная тема

Update

Описание

bool CIBlockSection::Update(
	int ID,
	array arFields,
	bool bResort = true,
	bool bUpdateSearch = true,
	bool bResizePictures = false
);

Метод изменяет параметры раздела с кодом ID. Перед изменением раздела вызываются обработчики события OnBeforeIBlockSectionUpdate из которых можно изменить значения полей или отменить изменение параметров раздела вернув сообщение об ошибке. После изменения раздела вызывается событие OnAfterIBlockSectionUpdate. Нестатический метод.

Примечание: Изменить значения полей GLOBAL_ACTIVE, DEPTH_LEVEL, LEFT_MARGIN, RIGHT_MARGIN, IBLOCK_ID, DATE_CREATE и CREATED_BY нельзя. Значение первого определяется флагом активности раздела и его родителей. DEPTH_LEVEL, LEFT_MARGIN и RIGHT_MARGIN расчитываются автоматически в зависимости от положения раздела в дереве.

Смотрите также

Параметры вызова

ПараметрОписание С версии
ID Код изменяемой записи.
arFields Массив вида Array("поле"=>"значение", ...), содержащий значения полей раздела инфоблоков.
bResort Флаг, указывающий пересчитывать ли правую и левую границы после изменения (поля LEFT_MARGIN и RIGHT_MARGIN).

Примечание: настоятельно рекомендуется не устанавливать значение false.

Если в перечне обновляемых полей имеются ключи IBLOCK_SECTION_ID, NAME, SORT, ACTIVE, то параметр bResort обязательно должен быть установлен в true. В противном случае необходимо вызывать после серии операций метод CIBlockSection::ReSort.
bUpdateSearch Флаг, указывающий, что раздел должен быть проиндексирован для поиска сразу же после сохранения. 4.0.6
bResizePictures Использовать настройки инфоблока для обработки изображений. По умолчанию настройки не применяются. Если этот параметр имеет значение true, то к полям PICTURE и DETAIL_PICTURE будут применены правила генерации и масштабирования в соответствии с настройками информационного блока. 9.0.4

Возвращаемое значение

Метод возвращает true если изменение прошло успешно, при возникновении ошибки метод вернет false, а в свойстве LAST_ERROR объекта будет содержаться текст ошибки.

Примеры использования

<?
$bs = new CIBlockSection;
$arPICTURE = $_FILES["PICTURE"];
$arPICTURE["MODULE_ID"] = "iblock";
$arFields = Array(
	"ACTIVE" => $ACTIVE,
	"IBLOCK_SECTION_ID" => $IBLOCK_SECTION_ID,
	"IBLOCK_ID" => $IBLOCK_ID,
	"NAME" => $NAME,
	"SORT" => $SORT,
	"PICTURE" => $arPICTURE,
	"DESCRIPTION" => $DESCRIPTION,
	"DESCRIPTION_TYPE" => $DESCRIPTION_TYPE
);
if($ID > 0)
{
	$res = $bs->Update($ID, $arFields);
}
else
{
	$ID = $bs->Add($arFields);
	$res = ($ID>0);
}
?>


© «Битрикс», 2001-2024, «1С-Битрикс», 2024