• Модуль: landing
  • Путь к файлу: ~/bitrix/modules/landing/lib/folder.php
  • Класс: BitrixLandingFolder
  • Вызов: Folder::changeSiteIdRecursive
static function changeSiteIdRecursive(int $folderId, int $newSiteId)
{
	// move sub folders
	$res = self::getList([
		'select' => [
			'ID'
		],
		'filter' => [
			'PARENT_ID' => $folderId
		]
	]);
	while ($row = $res->fetch())
	{
		$resAffected = self::update($row['ID'], [
			'SITE_ID' => $newSiteId
		]);
		if ($resAffected->isSuccess())
		{
			self::changeSiteIdRecursive($row['ID'], $newSiteId);
		}
	}

	// move sub landings
	$res = Landing::getList([
		'select' => [
			'ID'
		],
		'filter' => [
			'FOLDER_ID' => $folderId
		]
	]);
	while ($row = $res->fetch())
	{
		Landing::update($row['ID'], [
			'SITE_ID' => $newSiteId
		]);
	}

}