登録されているすべてのサイドバーのリストを取得する


17

各カテゴリ(カテゴリごとに個別のウィジェットスペース)のサイドバーを自動的に登録しています。私が使用しているテクニックはこちらです。

管理者側には、登録済みのすべてのサイドバーのドロップダウンを表示する必要があるオプションページがあります...登録済みのサイドバーのこのリストを動的に取得する方法はありますか?functions.phpに登録されているため、データベースではなくメモリ内にあると想定しています。

グローバル変数に登録したサイドバーを追跡できましたが、プラグインが独自のサイドバーを登録した場合に備えて、それらも考慮したいと思います。

必要に応じてコアを掘り下げますが、誰かがすぐに知っているかもしれないと考えました:)

ありがとう

回答:


22

うーん...これが最善の方法かどうかはわかりませんが、簡単です:

調べてみるregister_sidebar()と、新しいサイドバーが単に配列に固定されていることがわかりました。$wp_registered_sidebars

そして、私はそれがそうだと思います。彼らが変数の名前を変更した場合、私はめちゃくちゃになると思います。


4
いつでも$ GLOBALS ['wp_registered_sidebars']からアクセスできます。その場合は、プラグインで検索と置換を実行するだけで済みます。覚えている限り導入されているため、変更はありませんでした。
ハクレ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.