Здравствуйте.
Сегодня я хочу поделиться скриптом для битрикса который помогает скопировать свойство элемента инфоблока.
Это может пригодиться, например, когда вам надо сделать копию свойства для каких-то экспериментов, но не хочется испортить актуальные данные.
<?/* bitrix копирование свойства типа "привязка к разделам" внутри элемента инфоблока */ require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); CModule::IncludeModule("iblock"); //следующие 4 строки снимают ограничения по времени и памяти выполнению скрипта //это бывает полезно когда вам надо обновить очень много элементов @set_time_limit(99600); ini_set("memory_limit","4096M"); ini_set("max_execution_time","0"); ini_set("max_input_time","0"); //получаем все элементы инфоблока $prods = CIBlockElement::GetList( array(), //тут надо ввести ID вашего инфоблока и другие параметр для фильтрации array('IBLOCK_ID' => 14), false, false, array('*') ); while($el = $prods->GetNextElement()){ $fields = $el->GetFields(); //тут введите код свойство которое копируется $from = $el->GetProperty('PROP_FROM'); //обновляем свойство CIBlockElement::SetPropertyValuesEx( $fields['ID'], //ID обновляемого элемента 14, //ID инфоблока array('PROP_TO' => $from['VALUE']) //код обновляемого свойства ); } require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php"); ?>
Надеюсь этот скрипт для копирования свойств bitrix вам поможет.
Если есть вопросы по работе или предложения по улучшению скрипта пишите.
bitrix копирование свойств типа привязка к элементам