web-dev-qa-db-ja.com

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

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

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

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

私がしなければならない場合、私はコアを掘り下げるでしょう、しかし誰かがすぐに知っているかもしれないと思った:)

ありがとう

15
Jonah Goldstein

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

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

そしてそれはそれだと思います。彼らが変数の名前を変更したことがあれば、私は気が狂っていると思います。

21
Jonah Goldstein