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

SetFields

Описание и параметры

CIBlock::SetFields(
	int ID,
	array arFields
);

Метод изменяет описание полей элементов инфоблоков. С ее помощью можно отметить поля как обязательные для заполнения, а также установить значение по умолчанию для новых элементов. Метод статический.

Примечание: обязательность полей будет проверена в методах CIBlock::Add и CIBlock::Update, а значение по умолчанию будет установлено только в форме редактирования элемента в административной части сайта.

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

Параметр Описание
ID
Код информационного блока.
arFields
Массив вида array("код поля" => "значение" ...), где значение это массив содержащий следующие элементы:
  • IS_REQUIRED - признак обязательности заполнения (Y|N).
  • DEFAULT_VALUE - значение поля по умолчанию.

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

Метод ничего не возвращает.

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

Описание полей

  • IBLOCK_SECTION - привязка к разделам
  • ACTIVE - Флаг активности
  • ACTIVE_FROM - Дата начала действия элемента
  • ACTIVE_TO - Дата окончания действия элемента
  • SORT - Порядок сортировки элементов между собой
  • NAME - Название элемента
  • PREVIEW_PICTURE - Код картинки для предварительного просмотра
  • PREVIEW_TEXT_TYPE - Тип предварительного описания
  • PREVIEW_TEXT - Предварительное описание
  • DETAIL_PICTURE - Код картинки для детального просмотра.
  • DETAIL_TEXT_TYPE - Тип детального описания
  • DETAIL_TEXT - Детальное описание
  • XML_ID - Внешний идентификатор
  • CODE - Символьный идентификатор
  • TAGS - Теги элемента
Признак обязательности не может быть переопределен для полей ACTIVE, NAME, PREVIEW_TEXT_TYPE, DETAIL_TEXT_TYPE. Эти поля всегда являются обязательными.

Значением поля DEFAULT_VALUE для полей PREVIEW_PICTURE и DETAIL_PICTURE является массив следующего вида:
  • FROM_DETAIL - возможные значения: Y|N. Указывает на необходимость генерации картинки предварительного просмотра из детальной.
  • SCALE - возможные значения: Y|N. Если равно "Y", то изображение будет отмасштабировано.
  • WIDTH - целое число. Размер картинки будет изменен таким образом, что ее ширина не будет превышать значения этого поля.
  • HEIGHT - целое число. Размер картинки будет изменен таким образом, что ее высота не будет превышать значения этого поля.
  • IGNORE_ERRORS - возможные значения: Y|N. Если во время изменения размера картинки были ошибки, то при значении "N" будет сгенерирована ошибка.
  • METHOD - возможные значения: resample или пусто. Значение поля равное "resample" приведет к использованию функции масштабирования imagecopyresampled, а не imagecopyresized. Это более качественный метод, но требует больше серверных ресурсов.
  • COMPRESSION - целое от 0 до 100. Если значение больше 0, то для изображений jpeg оно будет использовано как параметр компрессии. 100 соответствует наилучшему качеству при большем размере файла.
  • DELETE_WITH_DETAIL -  возможные значения: Y|N. Указывает на необходимость удаления картинки предварительного просмотра при удалении детальной.
  • UPDATE_WITH_DETAIL -  возможные значения: Y|N. Указывает на необходимость обновления картинки предварительного просмотра при изменении детальной.

Примеры

//Как сделать поле "Символьный код" обязательным
if (CModule::IncludeModule('iblock'))
{
	$Id = 2;
	$fields = CIBlock::getFields($Id);
	$fields["CODE"]["IS_REQUIRED"] = "Y";
	CIBlock::setFields($Id, $fields);
;
}
//Дополнительные настройки для поля "Символьный код" 
$arFields["CODE"]["DEFAULT_VALUE"]["UNIQUE"] = "Y";//Если код задан, то проверять на уникальность
$arFields["CODE"]["DEFAULT_VALUE"]["TRANSLITERATION"] = "Y";//Транслитерировать из названия при добавлении элемента

//Подсказка: настройки для всех полей можно подсмотреть в исходном html-коде страницы с формой редактирования инфоблока.


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