Come aggiungere un menu di amministrazione separato per il componente personalizzato


9

Per impostazione predefinita, il componente personalizzato può essere visualizzato nel menu "Estensioni" sul lato amministratore. Ma come posso creare il mio menu in alto vicino al menu 'Estensioni' come 'Il mio componente' e mostrare i collegamenti del sottomenu sotto quello?


Stai parlando della stessa cosa che fanno Community Builder? Se è così, inizialmente stavo per raccomandare di guardare attraverso il loro codice, ma dopo averlo guardato io stesso penso diversamente: /
Lodder

@Lodder sì, hai ragione. Mi aspetto un modulo simile. Mi riferisco al modulo CB e vedo che hanno un sacco di codice per raggiungerlo. Ho pensato che ci potesse essere un modo più semplice di fare e questa è la ragione di questa domanda.
Malaiselvan,

Risposte:


6

Possiamo sviluppare un componente lato amministratore con lo snippet di codice seguente.

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

Il codice sopra crea un oggetto menu e carica 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);

Il codice sopra determinerà come visualizzare il menu. Abilitato o disabilitato.

default_disabled.php

$menu->addChild(new JMenuNode(JText::_('Menu'), null, 'disabled'));

Il codice sopra è solo per visualizzare il menu in grigio in caso di disabilitato.

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

Il codice sopra aggiungerà il menu e le voci di menu.


Molto completo e ben spiegato, funziona benissimo, grazie!
jackJoe,

4

Per fare ciò dovrai sovrascrivere il modello di amministrazione.

C'è un articolo piuttosto dettagliato qui che descrive come farlo. È stato scritto per Joomla 2.5 ma dovrebbe funzionare anche per Joomla 3.0

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


Sono abbastanza sicuro che ci debba essere un altro modo: Virtuemart 3 appare nel menu in alto dopo l'installazione.
Khaarkh,

Possono farlo semplicemente aggiungendo una sostituzione del modello durante l'installazione
Søren Beck Jensen,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.