Совсем недавно я запостил идею насчет вкладок в настройках компонента. Вроде как и народ "за", но понятное дело - у разработчиков нет времени на такие мелочи, поэтому представляю вашему вниманию собственную реализацию вкладок в настройках компонента ( думаю будет актуально, особенно для комплексных компонентов, где в одной куче собраны настройки и для детальной, и для списка, и для фильтра, и еще черт знает чего ).
Значит так. Сразу скажу, что на сайте должен быть подключен jQuery. Для начала скачиваем архив и распаковываем его в папку с компонентом ( в корень - рядом с component.php ).
А далее нам надо будет прописать код для вкладок в файле .parameters.php. Ну что ж - приступим.
TABS - это сам массив вкладок. Каждая вкладка содержит 2 параметра: NAME - заголовок вкладки, GROUPS - массив ID групп, которые будут показаны на данной вкладке. SETTINGS - массив параметров. Пока он там только один - ALL_BUTTON_TITLE - заголовок вкладки, на которой будут отабражены все настройки компонента.
В итоге, в конце файла .parameters.php будет следующий блок кода:
//Подключаем класс для работы с вкладками
include_once('tabs/CComponentTabs.php');
//Сам массив вкладок
$arTabs = array(
'TABS' => array(
array(
'NAME' => 'Настройки списка',
'GROUPS' => array('BASE', 'FIELD_SETTINGS')
),
array(
'NAME' => 'Настройки детальной',
'GROUPS' => array('VISUAL')
)
),
'SETTINGS' => array(
'ALL_BUTTON_TITLE' => 'Все настройки'
)
);
//Инициализация и подключение. Первым параметром идет массив параметров компонента array('GROUPS' => array(...), 'PARAMETERS' => array(...)), вторым - массив вкладок.
CComponentTabs::Init($arComponentParameters, $arTabs);
А вот и результат:
Ну, а стили кнопок при желании вы можете отредактировать как угодно. Благодарю за внимание.
Классно, правда стили немного хромают, сейчас заметно что кнопки вкладок как-то отдельно находятся от основного содержания. Думаю, было бы хорошо выровнять кнопки по левому краю, у активной первой вкладки не показывать нижнюю границу (чтобы слить её с основным контентом), и убрать подчеркивание у ссылки (так как она уже нажата). А у двух других кнопок - сделать подчеркивание пунктиром (как стандарт для ссылок, при клике на которые перезагрузки страницы не произойдет). А так идея классная.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».