Отримайте список усіх зареєстрованих бічних панелей


17

Я реєструю бічні панелі автоматично для кожної категорії (окремий простір віджетів на категорію). Методика, яку я використовую, тут .

На стороні адміністратора у мене є сторінка параметрів, де мені потрібно відобразити спадне меню всіх зареєстрованих бічних панелей ... Чи є спосіб динамічно отримати цей список зареєстрованих бічних панелей? оскільки вони реєструються у function.php, я припускаю, що вони в пам'яті, а не в базі даних.

Я міг би відслідковувати бічні панелі, які я реєструю в якійсь глобальній змінній, але про всяк випадок, якщо плагіни реєструють власні бічні панелі, я також хотів би їх врахувати.

Я перекопаю ядро, якщо доведеться, але подумав, що хтось може знати невдало :)

Спасибі

Відповіді:


22

Хм ... я не впевнений, що це найкращий спосіб зробити це, але це просто:

Я заглянув register_sidebar()і виявив, що нові бічні панелі проставляються на масив:$wp_registered_sidebars

І я гадаю, що це все. Якщо вони коли-небудь змінять назву змінної, я думаю, що я був би накручений.


4
Ви завжди можете отримати доступ до нього через $ GLOBALS ['wp_registered_sidebars']. Якщо це зміни, ви можете у своєму плагіні просто запустити пошук і замінити - і він не змінився, оскільки він був введений, наскільки я пам'ятаю.
хакре
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.