【问题标题】:Joomla 3 get the menu titleJoomla 3 获取菜单标题
【发布时间】:2012-12-19 12:09:06
【问题描述】:

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

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

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

不可能这么难,但找不到正确的语法。谁能帮帮我?

提前致谢,

威姆斯

【问题讨论】:

    标签: php menu title joomla3.0


    【解决方案1】:

    你也可以用这个:

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

    或者如果$app = JFactory::getApplication();已经存在

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

    【讨论】:

      【解决方案2】:

      以下代码在 Joomla 3.0 中适用于我:

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

      【讨论】:

        【解决方案3】:

        使用这个:

        /** 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;
        

        【讨论】:

        • 感谢您的评论。这不完全是我所说的。我解决了设置 Joomla 以显示菜单标题的问题。在 index.php 中我添加了 style="xhtml": 在 CSS 中 .moduletable 类改变了,谢谢。威姆斯
        【解决方案4】:

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

        use Joomla\CMS\Factory;
        
        echo Factory::getApplication()->getMenu()->getActive()->title;
        

        【讨论】:

          猜你喜欢
          • 2013-09-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-11-20
          相关资源
          最近更新 更多