wordpress plugin WP Admin UI Customize version up 1.3.2

 

WordPressの管理画面UIをカスタマイズする

WP Admin UI Customizeのバージョンアップを行いました。

最新バージョンは 1.3.2

 

やったこと

本当はWordPress3.6のローンチに合わせて、最終確認をしてからコミットしようかと思って5月20日まで待っていましたが、ローンチのスケジュールがまたずれそうな感がしたので、先にコミットしました。

なので、WordPressのバージョンは今のところ、3.6 beta 3 まで確認済みです。

 

さて、やったことですが、まずバグ修正から。

管理画面のサイドメニューのカスタマイズが出来るのですが、サブメニューがひとつも無い設定をすると、エラーの表示が出ていました。ので、このバグ修正です。

次に、いくつかプラグイン内で使用できる変数を増やしました。

今まで全く気づきませんでしたが、テーマを子で使用している場合、template_directory_uriでは使用中のテーマディレクトリが上手く取得出来ませんでした。

※具体的には、親テーマが Twenty Twelve、子のテーマがMy Themeという名前で、ディレクトリ名も同じような名前だと仮定します。
使用テーマがMy Themeです。 で、そのテーマ内のfunctions.phpや他のテンプレート内からtemplate_directory_uriでテーマフォルダのURLを取得しようとすると、

http://サイトurl/wp-content/themes/twentytwelve/

になるようです。でもあくまでも親テーマなんて触ることはほぼ無いので、子のテーマディレクトリを取得できるよう、stylesheet_directory_uri を追加しました。

また、マルチサイトの場合だと現在のブログ名ではなく、ネットワークサイト名も扱えるようにしました。

次に、ここが一番難関でした。

 

投稿編集画面、固定ページ編集画面、それぞれメタボックスがありますよね。

このメタボックスで、デフォルト以外のメタボックスがあります。これを非表示にする機能。

ググっていると、「あぁ、グローバル変数の$wp_meta_boxesから取得できるじゃない」

となるかもしれませんが、実はほとんど取得できません。

(プラグインによって、フックをかける場所・タイミングが違う為)

他に方法は無いだろうか。どこかにフックをかければ取得できるんじゃない?とだいぶ、試行錯誤してみましたが、さっぱり。。

結果、思いついた方法として、「投稿編集画面」を表示すると、現在設定されているメタボックス全てを一度データベースに保存。

その後にWP Admin UI Customizeのメタボックス削除メニューから、先ほど保存したメタボックス一覧を読み込んで、非表示にするか選択する形式です。

この、「一度投稿編集画面または、固定ページ編集画面にアクセスする必要がある」という点を、英語でまた説明するのも私には難しいところです。

 

 

なんだかんだで、こんな機能を更新しましたよ。良かった寄付してね使ってみてね。

ダウンロードはこちら
http://wordpress.org/plugins/wp-admin-ui-customize/

コメントを残す