วิธีการเพิ่มเมนูผู้ดูแลระบบแยกต่างหากสำหรับองค์ประกอบที่กำหนดเอง


9

โดยค่าเริ่มต้นองค์ประกอบที่กำหนดเองสามารถเห็นได้ภายใต้เมนู 'ส่วนขยาย' ที่ด้านผู้ดูแลระบบ แต่ฉันจะสร้างเมนูของตัวเองที่ด้านบนใกล้กับเมนู 'ส่วนขยาย' เช่น 'ส่วนประกอบของฉัน' และแสดงลิงค์เมนูย่อยภายใต้นั้นได้อย่างไร


คุณกำลังพูดถึงสิ่งที่ Community Builder ทำเช่นเดียวกัน? ถ้าอย่างนั้นตอนแรกฉันจะแนะนำให้ดูรหัสของพวกเขา แต่หลังจากที่ได้ดูมันด้วยตัวเองฉันคิดว่าแตกต่างกัน: /
Lodder

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

โค้ดด้านบนเป็นเพียงการแสดงเมนู greyed ในกรณีที่ปิดการใช้งาน

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.