Заметки
Как переименовать папку Диска по ID
Как переименовать папку Диска в коробочном Bitrix24 через D7: объект Folder, права и отличие от прямого обновления таблицы.
Папку Диска в коробке лучше переименовывать через объект `Folder` и метод `rename`, а не прямым обновлением таблиц. Главное — убедиться, что у вас ID именно папки Диска.
Задача
Иногда папка на Диске уже создана автоматически, но её нужно переименовать по ID: например, после изменения названия сделки, номера договора или клиента.
Переименование через D7
В коробке лучше работать с высокоуровневым объектом Диска, а не обновлять таблицу напрямую. Для папки есть метод rename.
use Bitrix\Main\Loader;
use Bitrix\Disk\Folder;
const FOLDER_ID = 9043;
const NEW_FOLDER_NAME = 'Сделка 123 — ООО Ромашка';
Loader::includeModule('disk');
$folder = Folder::getById(FOLDER_ID);
if (!$folder) {
echo 'Папка не найдена';
return;
}
$result = $folder->rename(NEW_FOLDER_NAME);
if (!$result) {
echo 'Папка не переименована';
return;
}
echo 'Папка переименована'; Так Битрикс сам обработает связанные проверки, индексацию и внутреннюю логику модуля Диск.
Права и пользователь
Переименование должно выполняться от пользователя, у которого есть право редактирования папки, или из административного скрипта, где вы осознанно обходите пользовательский интерфейс.
Если папка не находится по ID, сначала проверьте, что это именно ID объекта Диска, а не ID файловой записи или прикреплённого объекта.
Путь не главное
Папку лучше искать и переименовывать по ID объекта. Путь и имя могут меняться, особенно если папки создаются автоматически по сделкам или клиентам.
$folder = Bitrix\Disk\Folder::getById(FOLDER_ID);
if ($folder) {
echo $folder->getName();
}