remove_meta_box() の使い方|説明・引数・注意点

説明

remove_meta_box() は、投稿編集画面などから、メタボックスを非表示にする関数です。

基本構文

remove_meta_box( string $id, string|array|WP_Screen $screen, string $context ): void

引数

  • $id:メタボックスのID
  • $screen:画面(投稿タイプ)
  • $context:表示位置

戻り値

戻り値はありません。

使い方(サンプル)

add_action( 'add_meta_boxes', function() {
	remove_meta_box( 'postcustom', 'post', 'normal' );
} );

注意点

  • 登録後(遅い優先度)に実行する必要があります。

実務での使いどころ

  • 投稿の編集画面から、不要な入力欄を、消すとき。
  • クライアント向けに、編集画面を、整理するとき。

よくあるミスと対処

  • $context が、追加されたときと、違い、消えない。
  • 追加の処理より前に実行され、消えない。add_meta_boxes フックの優先度を、大きくする。
  • ブロックエディターの、専用のパネル(ディスカッションなど)は、消えないことがある。ブロックエディターでは、実際の画面で確認する。

NG例

remove_meta_box( 'commentstatusdiv', 'post' ); // context がなく、フックの外で呼んでいる

OK例

add_action( 'add_meta_boxes', function () {
	remove_meta_box( 'commentstatusdiv', 'post', 'normal' );
}, 99 );

使い分け早見表

関数 役割
remove_meta_box() 編集画面の入力欄を、削除する
add_meta_box() 編集画面に、入力欄を追加する
wp_add_dashboard_widget() ダッシュボードに、ウィジェットを追加する

関連項目

add_meta_box()

公式リファレンス:remove_meta_box() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました