/ Добавляем в Bitrix возможность перейти на страницу элемента из админки

Добавляем в Bitrix возможность перейти на страницу элемента из админки

19 Апр 2020
Дмитрий М.
903

Для этого необходимо модифицировать страницу редактирования элемента. Для этого воспользуемся обработчиками событий, в частности события вызова контекстного меню OnAdminContextMenuShow. Для это в файле init.php напишем обработчик события.

Файл init.php располагается в папке: ./bitrix/php_interface/ или ./local/php_interface/. Если в этих папках его нет, то нужно его создать в одной из папок.

Запишем в файл init.php следующий код:

AddEventHandler('main', 'OnAdminContextMenuShow', 'ElementDetailAdminContextMenuShow'); 
 
function ElementDetailAdminContextMenuShow(&$items){
 if ($_SERVER['REQUEST_METHOD']=='GET' && $GLOBALS['APPLICATION']->GetCurPage()=='/bitrix/admin/iblock_element_edit.php' && $_REQUEST['ID']>0)
    {
        CModule::IncludeModule('iblock');
        $rsElement = CIBlockElement::GetList(
            $arOrder  = array("ID" => "ASC"),
            $arFilter = array(
                "=IBLOCK_ID" => $_REQUEST['IBLOCK_ID'],
                "=ID" => $_REQUEST['ID'],
            ),
            false,
            false,
            $arSelectFields = array("ID", "NAME", "IBLOCK_ID", "CODE", "DETAIL_PAGE_URL")
        );
        if($arElement = $rsElement->GetNext(true, false)):
            $items[] = array(
                "TEXT"  => "Открыть страницу элемента",
                "LINK"  => $arElement['DETAIL_PAGE_URL'],
                'LINK_PARAM' => 'target=_blank',
                "TITLE" => "Открыть страницу элемента",
                "ICON"  => "adm-btn",
            );    
        endif;
        }
}

Теперь на странице просмотра/редактирования элемента появится кнопка "Отрыть страницу элемента" при нажатии на которую, откроется страница элемента.

Статья была полезна? Поблагодарите автора.

Самые читаемые
#1С Битрикс, #Bitrix CMS, #.htaccess, #настройка редиректов
4 Авг 2019
#Хлебные крошки, #1С Битрикс, #Bitrix CMS, #bitrix:breadcrumbs, #component_epilog, #кэширование
1 Окт 2018
#ресайз изображений, #1С Битрикс, #Bitrix CMS
3 Мар 2019
#bitrix, #robots.txt, #sitemap.xml, #поддомены, #мультисайтовость
16 Окт 2018
#bitrix, #bitrix:catalog.section, #скидки, #товары со скидкой, #страница скидок, #страница со скидками
4 Окт 2018
#Bitrix CMS, #breadcrumb, #bitrix:breadcrumbs, #хлебные крошки, #настройка
13 Фев 2019
#bitrix, #пользовательские свойства, #тип свойств, #привязка к элементам
27 Ноя 2019
#bitrix, #свойства элементов, #обработчик событий, #OnBeforeIBlockElementUpdate, #OnIBlockElementSetPropertyValues
21 Июл 2020
#bitrix:news, #сортировка, #фильтрация, #bitrix:catalog, #catalog.section, #news.list
16 Дек 2020