Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

как изменить активность элемента? (не трогая другие его поля и свойства)

00 голосов
3
если менять активность через ciblockelement::update - то я выставлю активность в ту что надо и при этом все остальные поля и свойства обнулятся если я их не пропишу снова.

а есть какой-то способ просто поменять активность элемента и не трогая всего остального?
спросил 11 Фев, 14 от FOOLKS (520 баллов)

3 Ответы

00 голосов
Цитата
Максим Задубин пишет:
если менять активность через ciblockelement::update - то я выставлю активность в ту что надо и при этом все остальные поля и свойства обнулятся если я их не пропишу снова.

Нет, если вы меняете только одно поле (не свойства), то и будет меняться только одно поле.
ответил 29 Июнь, 14 от Delp (7,220 баллов)
00 голосов
Код
$obEl = new CIBlockElement();
$boolResult = $obEl->Update($ID_элемента,array('ACTIVE' => 'N')); // деактивация

При этом изменится время модификации элемента и отработают все события, относящиеся к методу CIBlockElement::Update().
ответил 29 Окт, 14 от Pomnep (13,960 баллов)
00 голосов
странно.
я делаю таким образом:
$el = new CIBlockElement;
$arLoadProductArray = Array(
"ACTIVE" => "N", // не активен
);
$res = $el->Update($ELEMENT_ID, $arLoadProductArray);
if(!$res){
die("cant set active N init.php");
}

- ошибку не выдает но активность элемента не меняется!
пс. также пробовал менять активность у неактивного элемента - тоже не меняет
ответил 26 Фев, 15 от FOOLKS (520 баллов)

Похожие вопросы

0 голосов
1 ответ
0 голосов
3 ответов
спросил 26 Сен, 13 от max91 (120 баллов)
0 голосов
4 ответов
0 голосов
2 ответов