it-blog.club
Битрикс работаем со свойством список через API

Битрикс работаем со свойством список через API

На самом деле я бы хотел рассмотреть свойство список не в виде выпадающего списка, а как чекбокс. И с единственным значением Y .

Ну например если вам потребовалось создать свойство чекбокс, через тип свойства "Список"

bitrix-checkbox.png

Добавление элемента

Давайте рассмотрим вариант добавления элемента с записью данного свойства.

Код свойства CURRENT , тип список, внешний вид Флажки, единственное значение Y

Воспользуемся обычным методом Add()


$elem['IBLOCK_ID'] => $iblockID;
$elem['NAME'] => 'Тестовый элемент';
$elem['PROPERTY_VALUES'] => array(//Тут обратить внимание
    'CURRENT' => 555
);

$el = new CIBlockElement;
$PRODUCT_ID = $el->Add($elem);

Данный скрипт добавит новый элемент и так же пропишет значение у свойства CURRENT. Т.е. отметит наш чекбокс. Если же вы просто передадите значение как Y , то оно не будет записано. Нужно передать ID варианта.

Обновление элемента

То же самое касается и обновление элемента.

Воспользуемся функцией SetPropertyValues


CIBlockElement::SetPropertyValues($elemID, $iblockID, 555, 'CURRENT');

Так же вместо самого значение, передаём его ID

Получение элемента

Как это не печально, но данное правило нужно использовать и в фильтре для получения элемента.

Рассмотрим вариант с GetList()


$arElement = CIBlockElement::GetList(
    array(),
    array(
        'IBLOCK_ID' => $iblockID,
        'PROPERTY_CURRENT' => 555
    ),
    false,
    false,
    array(
        'ID',
    )
);
$element = $arElement->GetNext();
print_r($element )

Для того, чтобы получить элементы с проставленным чекбоксом, мы должны передать в фильтре ID нужного нам результата. А не его значение!

Если мы укажем в фильтре 'PROPERTY_CURRENT' => 'Y' , то элемент получен не будет!

Собственно на этом всё. Не забывайте подписываться на обновления блога. Ставить Огонь, вон там, чуть ниже статьи. И вступайте в нашу группу в ВК.


it-blog.club 1614
Автор: Ярослав Хмель


Если Вам понравилась статья, то можете поддержать блог переведя N сумму на кофе авторам или оплату хостинга!
В любом случае спасибо! А так же не забывайте про группу в ВК
ПОИСК ПО САЙТУ
Поддержать