Model view controller 为什么Joomla 3的MVC组件有一个空的侧栏?

Model view controller 为什么Joomla 3的MVC组件有一个空的侧栏?,model-view-controller,joomla,sidebar,submenu,joomla3.4,Model View Controller,Joomla,Sidebar,Submenu,Joomla3.4,我正在将Joomla 2.5组件更改为Joomla 3组件。然而,就我所能找到的而言,这是一个很大的障碍,几乎没有任何关于它的文档 在Joomla 3中(编写时使用3.5.1),原来水平的子菜单垂直进入侧栏 我调用了JHtmlSidebar::addEntry(“Item”,“index.php?option=com_example”,false)来添加子菜单项。然后在视图的模板文件中调用echo JHtmlSidebar::render() 我确实有一个可以打开和关闭的边栏,但里面没有任何项目

我正在将Joomla 2.5组件更改为Joomla 3组件。然而,就我所能找到的而言,这是一个很大的障碍,几乎没有任何关于它的文档

在Joomla 3中(编写时使用3.5.1),原来水平的子菜单垂直进入侧栏

我调用了
JHtmlSidebar::addEntry(“Item”,“index.php?option=com_example”,false)
来添加子菜单项。然后在视图的模板文件中调用
echo JHtmlSidebar::render()

我确实有一个可以打开和关闭的边栏,但里面没有任何项目

我从下载了Hello World示例组件。它有一个侧边栏,但很混乱:在其消息视图中有一个侧边栏,其中包含项目,但没有可折叠的项目,在其类别视图中,可折叠的项目显示为空,位于另一个侧边栏上方:

它还使用
JSubMenuHelper
(而不是
JHtmlSidebar
),这是不推荐使用的

然后,我尝试在Joomla的core com_安装程序中了解它是如何实现的,该安装程序有一个带有子菜单项的可折叠侧栏,但没有找到比我上面描述的更多的内容


谁能告诉我如何得到一个合适的边栏?已经非常感谢了

就像经常发生的那样:在我发布我的问题后,我找到了答案

在admin/controller.php中,我定义了一个方法
addSubmenu()
,其中调用了
JHtmlSidebar::addEntry()。我从方法
display()
中调用了
addSubmenu()
,但在调用
parent::display()
之后,我意外地调用了该方法,因此在执行该方法时,还没有添加任何条目

现在调用
addSubmenu()
,然后调用
parent::display()
,得到一个非常好的边栏