Битрикс список элементов инфоблока в панели администрирования, добавить команду в меню действий
Версия 1С-Битрикс: Управление сайтом 21.300.0
В списке элементов инфоблока в панели администрирования есть меню действий. В нём выводится список команд, которые можно выполнить над одним элементом.
На изображении ниже (взято из публичного курса "Контент-менеджер") колонка с меню действий выделена цифрой 4.
Подскажите как штатными средствами (например, через API) добавить в меню собственную команду?
Ответы (1 шт):
Автор решения: userlond
→ Ссылка
В файл init.php (рекомендуется /local/php_interface/init.php) добавить код:
<?php
AddEventHandler('main', 'OnAdminListDisplay', function (&$list) {
$request = Application::getInstance()->getContext()->getRequest();
$uri = new Uri($request->getRequestUri());
parse_str($uri->getQuery(), $params);
$currentIblockId = $params['IBLOCK_ID'] ?: null;
// опционально: ограничение, для элементов каких инфоблоков добавляем действие
/*if ($currentIblockId != <id_инфоблока>) {
return;
}*/
/** @var \CAdminUiListRow[] $rows */
$rows = $list->aRows;
foreach ($rows as $row) {
$row->aActions[] = [
'TEXT' => 'Ракета',
'TITLE' => 'Отправить ракету',
'ACTION' => /** @lang JavaScript */ <<<__js
if (confirm('Вы действительно хотите отправить ракету?')) {
alert('Ракета отправлена!');
}
__js,
];
}
});
В итоге в меню действий будет добавлено действие "Ракета", с простым JavaScript-обработчиком.
