function create_menu($current_menu_id) { $items = menuItems(); $menus = new JMenuSite(); if (isset($items[$current_menu_id])) { $item = $items[$current_menu_id]; foreach ($item as $key => $item_id) { echo '<li>'; echo $menus->getItem($item_id)->title; echo '</li>'; } } }
/** * Get default menu item to be shown up. * * @param JMenuSite $menu Joomla menu. * @param object $active Active menu item. * @param array $visited Already visited menu items. * * @return object|null */ protected function getDefaultMenuItem(JMenuSite $menu, $active, $visited = array()) { if (empty($active->query['defaultmenu']) || $active->id == $active->query['defaultmenu']) { // There is no highlighted menu item! return null; } $item = $menu->getItem($active->query['defaultmenu']); if (!$item) { // Menu item points to nowhere, abort! KunenaError::warning(JText::sprintf('COM_KUNENA_WARNING_MENU_NOT_EXISTS'), 'menu'); return null; } elseif (isset($visited[$item->id])) { // Menu loop detected, abort! KunenaError::warning(JText::sprintf('COM_KUNENA_WARNING_MENU_LOOP'), 'menu'); return null; } elseif (empty($item->component) || $item->component != 'com_kunena' || !isset($item->query['view'])) { // Menu item doesn't point to Kunena, abort! KunenaError::warning(JText::sprintf('COM_KUNENA_WARNING_MENU_NOT_KUNENA'), 'menu'); return null; } elseif ($item->query['view'] == 'home') { // Menu item is pointing to another Home Page, try to find default menu item from there. $visited[$item->id] = 1; $item = $this->getDefaultMenuItem($menu, $item->query['defaultmenu'], $visited); } return $item; }