获取所有已注册边栏的列表


17

我正在为每个类别自动注册侧栏(每个类别一个单独的小部件空间)。我正在使用的技术在这里

在管理端,我有一个选项页面,我需要在其中显示所有已注册侧边栏的下拉列表...是否可以动态获取此已注册侧边栏列表?因为它们是在functions.php中注册的,所以我假设它们在内存中,而不是数据库中。

我可以跟踪在某些全局变量中注册的侧边栏,但是以防万一插件注册了自己的侧边栏,我也想考虑一下它们。

如果需要的话,我将深入研究核心内容,但以为有人可能会立即了解:)

谢谢

Answers:


22

嗯...我不确定这是否是最好的方法,但是很简单:

我查看了一下,register_sidebar()发现新的侧边栏被简单地添加到数组上:$wp_registered_sidebars

我想就是那样。如果他们更改了变量的名称,我想我会被搞砸了。


4
您始终可以通过$ GLOBALS ['wp_registered_sidebars']访问它。万一发生变化,您可以在插件中进行搜索和替换-它没有变化,因为据我所知它已经被引入。
hakre 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.