Joomla 3获得菜单标题

时间:2012-12-19 12:09:06

标签: php menu title joomla3.0

我在一个页面上使用多个菜单。 在多个div中我显示一个菜单(menu1到menu6)。出于模板的目的,我想让每个菜单的菜单标题显示在顶部。 我无法从菜单中获得标题。

我发现这是获取菜单项的方法。

<?php
$menu = $app->getMenu();
$menu_items = $menu->getItems('menutype', 'menu1');
var_dump ($menu_items);
?>

不可能这么难但找不到合适的语法。谁能帮助我?

提前致谢,

Wims的

4 个答案:

答案 0 :(得分:8)

你也可以使用这个:

$menu = &Jsite::getMenu();
$menuname = $menu->getActive()->title;

或已存在$app = JFactory::getApplication();

$menu = $app->getMenu();
$menuname = $menu->getActive()->title;

答案 1 :(得分:4)

以下代码适用于Joomla 3.0:

$app = JFactory::getApplication();

$menu = $app->getMenu();
$menuname = $menu->getActive()->title;

答案 2 :(得分:2)

使用此:

/** Getting the Menu ID of Menu was clicked by user **/
$menu    =   &JSite::getMenu(); 
$id    =   $menu->getActive()->id;

/** Getting the Title of the Menu by using id. **/ 
$db    = JFactory::getDBO();
$query    = "SELECT title FROM kjs_menu WHERE id = $id";
$db->setQuery($query);
$rows    = $db->loadObjectList();
$itemrow = $rows[0];
$title   =   $itemrow->title;

echo "Menu you have clicked is : ".$title;

答案 3 :(得分:0)

从Joomla 3.8开始,您可以使用名称间距:

use Joomla\CMS\Factory;

echo Factory::getApplication()->getMenu()->getActive()->title;