0

我正在将我的 Joomla 2.5 组件更改为 Joomla 3 组件。然而,事实证明这是一个很大的障碍课程,据我所知,几乎没有任何文档......

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

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

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

我从https://docs.joomla.org/J3.x:Developing_an_MVC_Component/Adding_an_install-uninstall-update_script_file下载了 Hello World 示例组件。它有一个侧边栏,但一团糟:在它的消息视图中,有一个侧边栏,其中包含项目,但没有可折叠的,在其类别视图中,可折叠的显示为空,并在另一个侧边栏上方:

关闭可折叠侧边栏的类别视图

打开可折叠侧边栏的类别视图

它还使用JSubMenuHelper(而不是JHtmlSidebar),已弃用...

然后我试图找出它是如何在 Joomla 的核心 com_installer 中完成的,它有一个带有子菜单项的漂亮可折叠侧边栏,但没有找到比我上面已经描述的更多的东西......

谁能告诉我如何获得合适的侧边栏?已经非常感谢了!!

4

1 回答 1

0

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

在 admin/controller.php 我定义了一个addSubmenu()JHtmlSidebar::addEntry()调用的方法。我addSubmenu()从方法display()调用,但我在调用之后不小心这样做了parent::display(),所以在执行该方法时还没有添加任何条目。

现在在调用addSubmenu()之前调用parent::display()并得到一个非常好的侧边栏。

于 2016-04-18T07:44:34.850 回答