사용자 컴포넌트에 별도의 관리자 메뉴를 추가하는 방법


9

기본적으로 사용자 정의 구성 요소는 관리자 측의 '확장'메뉴에서 볼 수 있습니다. 그러나 상단의 '내 구성 요소'와 같은 '확장'메뉴 근처에 내 자신의 메뉴를 만들고 그 아래에 하위 메뉴 링크를 표시하려면 어떻게해야합니까?


Community Builder와 동일한 기능에 대해 이야기하고 있습니까? 그렇다면 처음에는 코드를 살펴 보는 것이 좋을 것이지만 직접 살펴 보니 다르게 생각합니다
./

@ Lodder 네, 맞습니다. 비슷한 모듈을 기대하고 있습니다. 나는 CB 모듈을 참조하고 그것을 달성하기 위해 많은 코드가 있음을 알았다. 더 간단한 방법이있을 수 있다고 생각했는데 이것이 바로이 질문의 이유입니다.
Malaiselvan

답변:


6

아래 코드 스 니펫으로 관리자 측 구성 요소를 개발할 수 있습니다.

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();

위의 코드는 메뉴 및 메뉴 항목을 추가합니다.


매우 완벽하고 잘 설명되어 있으며 훌륭하게 작동합니다. 감사합니다!
jackJoe

4

이렇게하려면 관리 템플릿을 재정의해야합니다.

이 작업을 수행하는 방법을 설명하는 매우 자세한 기사가 있습니다. Joomla 2.5 용으로 작성되었지만 Joomla 3.0에서도 작동합니다.

http://magazine.joomla.org/issues/item/721-Customizing-the-Admin-Menu


다른 방법이 있어야한다고 확신합니다. Virtuemart 3은 설치 후 최상위 메뉴에 나타납니다.
Khaarkh

설치하는 동안 단순히 템플릿 재정의를 추가하면됩니다.
Søren Beck Jensen

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.