必要なのは、$wp_meta_boxes
によってグローバルにインデックス化されていget_current_screen()->id
ます。画面オプションを削除すると、'in_admin_header'
フックを使用して画面オプションが表示される直前に実行できるメタボックスも削除されます。
したがって、このスクリーンショットに表示されている「トラックバックの送信」画面オプションを削除したいとします。
次のクラスをテーマのfunctions.php
ファイルまたはビルドしているプラグインにドロップすると、コードによって「トラックバックの送信」画面オプションが削除されます(それに関連するメタボックスも必要ですが、これは正しいですか?)。
class Michael_Ecklunds_Admin_Customizer {
function __construct() {
add_action( 'in_admin_header', array( $this, 'in_admin_header' ) );
}
function in_admin_header() {
global $wp_meta_boxes;
unset( $wp_meta_boxes[get_current_screen()->id]['normal']['core']['trackbacksdiv'] );
}
}
new Michael_Ecklunds_Admin_Customizer();
上記のコードをWordPress 3.4サイトに追加すると、次のようになります。
ここでPhpStorm内でZendデバッガーを使用すると$wp_meta_boxes[get_current_screen()->id]
、WordPress 3.4のデフォルトのインストールでどのような値がポスト編集画面に表示されるかを確認できます(例で参照した配列インデックスを丸で囲んでいます$wp_meta_boxes[get_current_screen()->id]['normal']['core']['trackbacksdiv']
。
うまくいけば、これはあなたが探していたものですか?