Режим правки Битрикс
Оригинальное название: Bitrix edit mode
Коротко
Состояние публичной части 1С-Битрикс, в котором вокруг компонентов и включаемых областей появляются рамки и кнопки: изменить текст, запись инфоблока или параметры блока.
Что такое «Режим правки Битрикс»
Режим включается кнопкой на панели управления и действует только для сотрудника, который его включил. Посетители в это время видят обычный сайт. При наведении на блок появляется рамка с меню: для текста — изменение области, для списка новостей — «Добавить», «Изменить», «Удалить», для любого компонента — настройка параметров и шаблона.
Это удобно контент-менеджеру, который думает страницами, а не разделами административной части. Увидел устаревшую цену в карточке — навёл мышь и открыл форму именно этого товара, без поиска по каталогу.
Как шаблон компонента поддерживает режим правки
Кнопки у отдельных записей появляются не сами: их добавляет шаблон компонента. В стандартных шаблонах это уже сделано, а в самописных про это часто забывают — и рамка есть вокруг всего списка, но не у каждой новости. Нужные строки выглядят так:
<?php foreach ($arResult['ITEMS'] as $item):
$this->AddEditAction(
$item['ID'],
$item['EDIT_LINK'],
CIBlock::GetArrayByID($item['IBLOCK_ID'], 'ELEMENT_EDIT')
);
?>
<div id="<?= $this->GetEditAreaId($item['ID']) ?>">
<?= $item['NAME'] ?>
</div>
<?php endforeach; ?>
Метод AddEditAction регистрирует кнопку, а GetEditAreaId даёт блоку идентификатор, к которому кнопка привязывается. Так же добавляют и кнопку удаления.
Что учесть
- Кэш: изменение элемента инфоблока сбрасывает тегированный кэш стандартных компонентов, а самописное кэширование в обход стандартного так не обновится.
- Права: кнопки показываются, только если у сотрудника есть доступ к инфоблоку или файлу.
- Вёрстка: рамки и меню немного сдвигают блоки, поэтому внешний вид страницы проверяют с выключенным режимом.
Режим правки — часть технологии «Эрмитаж», наряду с панелью и контекстными меню компонентов.

