За замовчуванням користувацький компонент можна побачити в меню "Розширення" на стороні адміністратора. Але як я можу створити своє власне меню вгорі поруч із меню "Розширення" на зразок "Мій компонент" та відобразити під цим посилання підменю?
За замовчуванням користувацький компонент можна побачити в меню "Розширення" на стороні адміністратора. Але як я можу створити своє власне меню вгорі поруч із меню "Розширення" на зразок "Мій компонент" та відобразити під цим посилання підменю?
Відповіді:
Ми можемо розробити компонент на стороні адміністратора за допомогою наведеного нижче фрагмента коду.
mod_custommenu.php
$input = JFactory::getApplication()->input;
$menu = new JAdminCSSMenu;
$enabled = $input->getBool('hidemainmenu') ? false : true;
// Render the module layout
require JModuleHelper::getLayoutPath('mod_custommenu', $params->get('layout', 'default'));
Вищевказаний код створює об’єкт меню та завантажує default.php
default.php
$document = JFactory::getDocument();
$direction = $document->direction == 'rtl' ? 'pull-right' : '';
require JModuleHelper::getLayoutPath('mod_custommenu', $enabled ? 'default_enabled' : 'default_disabled');
$menu->renderMenu('menu', $enabled ? 'nav ' . $direction : 'nav disabled ' . $direction);
Вищевказаний код визначає спосіб відображення меню. Увімкнено або вимкнено.
default_disabled.php
$menu->addChild(new JMenuNode(JText::_('Menu'), null, 'disabled'));
Вищевказаний код - це лише відображення сірого меню у разі відключення.
default_enabled.php
$menu->addChild(new JMenuNode(JText::_('Menu'), '#'), true);
$menu->addChild(new JMenuNode(JText::_('Menu1'), '', 'class:menu1'), 1);
$menu->addChild(new JMenuNode(JText::_('Menu2'), '#', 'class:menu2'));
$menu->getParent();
$menu->getParent();
Вищевказаний код додасть меню та пункти меню.
Для цього вам потрібно буде замінити шаблон адміністратора.
Тут є досить детальна стаття, яка описує, як це зробити. Він був написаний для Joomla 2.5, але також повинен працювати для Joomla 3.0
http://magazine.joomla.org/isissue/item/721-Customizing-the-Admin-Menu
Я робив це сам, але тепер використовую https://extensions.joomla.org/extension/admin-menu-manager