Получение и обновление списка привязки элементов к разделам

Bitrix 17.0.14

Для получения в битриксе списка разделов привязанных к элементу используем функцию CIBlockElement::GetElementGroups.

Например, нам нужно сделать выборку элементов которые были созданы больше чем два месяца назад и удалить их из раздела новинок.

Делаем выборку и получаем id элементов в которых присутствует искомый раздел :

В фильтре мы указываем ‘SECTION_ID’=>[$section_new] (делаем переменную массивом), т.к. значением фильтра может быть массив и в этом случае будут выбраны элементы привязанные хотя бы к одному из разделов указанных в фильтре. Если нам надо выбрать по «основному разделу», тогда фильтруем по параметру IBLOCK_SECTION_ID.

После выборки id элементов получаем список разделов для каждого из них функцией  CIBlockElement::GetElementGroups и после добавляем обычной функцией Update в которой обновляем поле IBLOCK_SECTION передавая в него массив новых id разделов к которым будет привязка: