为什么我的 Joomla 3 MVC 组件有一个空的边栏?
Why does my MVC component for Joomla 3 have an empty sidebar?
我正在将我的 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 中完成的,它有一个带有子菜单项的漂亮的可折叠侧边栏,但没有找到比我上面已经描述的更多...
谁能告诉我如何获得合适的侧边栏?已经非常感谢了!!
而且经常发生:在我发布问题后,我找到了答案...
在admin/controller.php中我定义了一个方法addSubmenu()
,其中调用了JHtmlSidebar::addEntry()
。我从方法 display()
调用了 addSubmenu()
,但我在调用 parent::display()
后不小心这样做了,所以在执行该方法时还没有添加任何条目。
现在在调用 parent::display()
之前调用 addSubmenu()
,结果得到一个非常漂亮的边栏。
我正在将我的 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 中完成的,它有一个带有子菜单项的漂亮的可折叠侧边栏,但没有找到比我上面已经描述的更多...
谁能告诉我如何获得合适的侧边栏?已经非常感谢了!!
而且经常发生:在我发布问题后,我找到了答案...
在admin/controller.php中我定义了一个方法addSubmenu()
,其中调用了JHtmlSidebar::addEntry()
。我从方法 display()
调用了 addSubmenu()
,但我在调用 parent::display()
后不小心这样做了,所以在执行该方法时还没有添加任何条目。
现在在调用 parent::display()
之前调用 addSubmenu()
,结果得到一个非常漂亮的边栏。