Наиболее эффективным способом кастомизации bitrix24 является расширение существующего функционала в момент выполнения какого-либо события. Данный сниппет поможет подгрузить штатные или собственные расширения при открытии определенной страницы.
1. Регистрируем обработчик события:
$eventManager = \Bitrix\Main\EventManager::getInstance(); $eventManager->addEventHandler("main", "OnEpilog", [ "\\Aclips\\Module\\Handler", "loadCustomExtension" ] );
2. Описываем обработчик события
<?php namespace Aclips\Module; use Bitrix\Main\UI\Extension; class Handler { public static function loadCustomExtension() { global $APPLICATION; // Получение текущей директории $currentDirectory = $APPLICATION->getCurDir(); // Проверяем, что находимся на странице просмотра элемента контакта CRM if (mb_strpos($currentDirectory, '/crm/contact/details/') !== false) { // Подгружаем js расширение Extension::load('aclips.custom_js_extension'); } } }
Таким образом, каждый раз при открытии страницы просмотра контактов CRM будет загружаться расширение aclips.custom_js_extension.