Удалить все фотографии Bitrix

Иногда нужно, например перед выгрузкой фотографий из 1С удалить все фотографии. Для этого может подойти скрипт под катом…

Замените ID инфоблока на свой и выполните скрипт в командной строке PHP в панели управления битрикса:

<?php
CModule::IncludeModule("iblock");

$res = CIBlockElement::GetList(
    Array(), 
    Array(
        'ACTIVE' => 'Y', 
        'IBLOCK_ID' => 4,
		"CHECK_PERMISSIONS" => "N",
    ), false
);

while($ar_res = $res->Fetch())
{
	$el = new \CIBlockElement;
	$el->Update($ar_res['ID'], array(
		// удаление фотографии на странице анонса
		"PREVIEW_PICTURE" => array('del' => 'Y'),
		// удаление фотографии на детальной странице
		"DETAIL_PICTURE" => array('del' => 'Y'),
		),
		false, 
		false
	);

	// ЕСЛИ НУЖНО ОЧИСТИТЬ СВОЙСТВО
	$PROP['MORE_PHOTO']['del'] = 'Y'; // не достаточно, фото не удаляются.
	$elUpdate = CIBlockElement::SetPropertyValuesEx($ar_res['ID'], false, $PROP);
}