【问题标题】:how to get specific menu items in joomla 2.5?如何在 joomla 2.5 中获取特定的菜单项?
【发布时间】:2013-10-29 13:13:36
【问题描述】:

我有一个主菜单。每个菜单项都链接到一篇文章。

现在在整个网站上,组件和模块中有很多地方我需要显示两个链接:隐私政策和投资组合。

有人可以指导我吗?我不想对链接进行硬编码,因为项目 ID 在生产中会有所不同。

【问题讨论】:

  • 查看了此个人资料和Bhavik Mulia,您似乎一直在用其他帐户提出问题并回答问题并为自己点赞。标记为 mod 注意。请停止这样做,因为真正致力于此网站的人只是在浪费时间来提供答案。
  • @Lodder 其他人也注意到了它。这两个帐户都已暂停 7 天。

标签: joomla joomla2.5


【解决方案1】:

您可以像这样使用数据库查询:

<?php
    $db = JFactory::getDbo();
    $query = $db->getQuery(true);         
    $query->select('*')
     ->from('#__menu')
     ->where('id = 435 OR id = 466');         
    $db->setQuery($query);
    $rows = $db->loadObjectList();

    foreach ($rows as $row) {
        echo '<a href="' . JRoute::_($row->link) . '">' . $row->title . '</a>';
    }
?>

不要忘记将 ID 的 435466 更改为您自己的菜单项的 ID:

希望对你有帮助

【讨论】:

    【解决方案2】:

    试试这个

    <?php
    
    $menuitemid = JRequest::getInt( 'Itemid' );
    if ($menuitemid)
    {
        $menu = JSite::getMenu();
        $menuparams = $menu->getParams( $menuitemid );
        $params->merge( $menuparams );
    }
    
    $propvalue= $params->get('property_name');
    
    ?>
    

    【讨论】:

    • 切记JRequest 在 Joomla 2.5 中已弃用,并已在 Joomla 3.0+ 中删除,因此如果您决定升级,则需要更改此代码。 JSite::getMenu() 也不应用于 Joomla 2.5+
    猜你喜欢
    • 2012-10-05
    • 1970-01-01
    • 2012-11-28
    • 2011-05-30
    • 2012-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多