Добавление собственных кнопок на странице редактировании элемента
Добавление подобных кнопок может быть полезным, когда есть необходимость по нажатию на кнопку переходить по какой-нибудь ссылке или выполнять какой-нибудь скрипт.
Чтобы добавить подобную кнопку, нужно объявить в /local/php_interface/init.php следующее событие:
<?php
$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler(
'main',
'OnAdminContextMenuShow',
'customButtonsHandler'
);
function customButtonsHandler(&$items)
{
global $APPLICATION;
//проверяем, что мы находимся на странице редактирования элемента
if ($_SERVER['REQUEST_METHOD'] != 'GET'
|| $APPLICATION->GetCurPage() != '/bitrix/admin/iblock_element_edit.php') return;
//какая-то логика...
$items[] = [
'TEXT' => 'Текст кнопки',
'LINK' => '<ссылка кнопки>', //любая ссылка
'TITLE' => 'Title кнопки',
];
$items[] = [
'TEXT' => 'Текст кнопки 2',
'LINK' => 'javascript:anyJsFunction()', //вызов JS функции
'TITLE' => 'Title кнопки 2',
];
}
В данном примере на панели будет добавлено 2 кнопки: одна со ссылкой, другая с вызовом JS функции.
С помощью данного принципа работает мой модуль «Кнопки быстрого перехода к предыдущему и следующему элементу инфоблока», а предыдущий и следующий элементы инфоблока ищутся по алгоритму, описанному в этой статье.
Оставьте комментарий
Если эта статья была полезной для вас, оставьте комментарий ниже или задайте интересующий Вас вопрос. Ваш опыт может помочь другим читателям!
Написать комментарий