首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Joomla中的自定义前端组件调用菜单重建?

如何从Joomla中的自定义前端组件调用菜单重建?
EN

Stack Overflow用户
提问于 2012-03-26 04:45:24
回答 1查看 1.6K关注 0票数 6

我正在使用Joomla2.5创建一个从前端执行的特殊组件。

这个组件解析xml文件以构建Joomla菜单,我正在执行INSERT INSERT #__menu查询,但我将其留给lftrgt字段。

菜单的构建非常混乱,当我单击后端的rgt按钮时,一切看起来都很完美,pathlftrgt字段被正确填充。

我花了两天时间试图从前端组件的控制器和模块执行重建任务,甚至尝试使用,但是缺乏PHP知识并不能帮助我正确地执行重建函数。

我写的最后一件事是:

代码语言:javascript
复制
jimport('joomla.database.tablenested');
class BSImportModelBSImport extends JModel
{
  ...
  function theimport()
  {
    ...
    $db =& JFactory::getDBO();
    $menu = new JTableNested('Menu', 'id',&$db);
    return $menu->rebuild();
  }
}

如果我的问题看起来很蠢,请不要向我扔石头.我真的需要帮助..。

EN

回答 1

Stack Overflow用户

发布于 2013-05-04 07:01:59

我使用菜单表的保存方法:

代码语言:javascript
复制
$data = array ( 
    'id' => 0 ,
    'title' => '{menu name}' ,
    'note' => '',
    'link' => '{link}',
    'menutype' => '{menutype}' ,
    'type' => 'url', 
    'published' => 1 ,
    'parent_id' => 1 ,
    'level' => 1 ,
    'component_id' => 0 ,
    'browserNav' => 0 ,
    'access' => getLevel() ,
    'template_style_id' => 0 ,
    'language' => '*' ,
    'params' => array ( 
        'menu-anchor_title' => '' ,
        'menu-anchor_css' => '' ,
        'menu_image' => '{url of logo for menu}',
        'menu_text' => 1 ) ,
);
$menuTable = JTable::getInstance('Menu', 'JTable', array());
$menuTable->save($data);

此方法创建新菜单并自动重新生成。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9866694

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档