कस्टम घटक के लिए अलग व्यवस्थापक मेनू कैसे जोड़ें


9

डिफ़ॉल्ट रूप से कस्टम घटक को एडमिन साइड में 'एक्सटेंशन' मेनू के तहत देखा जा सकता है। लेकिन मैं 'मेरे घटक' जैसे 'एक्सटेंशन' मेनू के पास शीर्ष पर अपना खुद का मेनू कैसे बना सकता हूं और इसके तहत उप मेनू लिंक दिखा सकता हूं?


क्या आप वही बात कर रहे हैं जो कम्युनिटी बिल्डर करते हैं? यदि ऐसा है, तो मैं शुरू में उनके कोड को देखने की सिफारिश करने जा रहा था, लेकिन खुद को अलग-अलग सोचता हुआ देख रहा था: /
Lodder

@Lodder हाँ, आप सही हैं। मैं एक समान मॉड्यूल की उम्मीद कर रहा हूं। मैं सीबी मॉड्यूल का उल्लेख करता हूं और मुझे लगता है कि इसे प्राप्त करने के लिए उनके पास बहुत सारे कोड हैं। मुझे लगा कि ऐसा करने का एक सरल तरीका हो सकता है और यही इस सवाल का कारण है।
मलयसेल्वन

जवाबों:


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 स्थापित होने के बाद शीर्ष मेनू में दिखाई देता है।
खखर

वे स्थापना के दौरान बस एक टेम्पलेट ओवरराइड जोड़कर ऐसा कर सकते हैं
सोरेन बेक जेन्सेन

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.