Gutenberg適用時の編集画面でタクソノミーパネルを表示させない方法

作成日:

WordPressの運用時に、投稿の編集画面でカテゴリーやタグなどのタクソノミーを選択出来ないようにしたいケースがあります。そのような時は、これまではremove_meta_boxを使用していたのですが、Gutenberg使用時ではこの関数は機能しないようです。

さらに都合の悪いことに、Gutenberg適用時の編集画面では、パネルごとに固有のIDやクラスもあてがわれないので、CSSで非表示にすることも出来ません。

そこで、Gutenberg適用時にもタクソノミーパネルを非表示にする方法を調べました。

📝 今回の例
  • カスタム投稿 | my_product
  • カスタムタクソノミー | product_detail

まず、(所謂)クラシックエディターの場合は、

PHP
function my_remove_meta_boxes() {
	remove_meta_box( 'product_detaildiv', 'my_product', 'normal' );
}
add_action( 'admin_menu', 'my_remove_meta_boxes' );

となります。

次にGutenberg適用時の場合は、

PHP
function mx_remove_meta_boxes_gutenberg ( $response, $taxonomy ) {
	if ( 'product_detail' === $taxonomy->name ) {
		$response->data['visibility']['show_ui'] = false;
	}
	return $response;
}
add_filter( 'rest_prepare_taxonomy', 'my_remove_meta_boxes_gutenberg', 10, 2 );

となります。

favicon
Custom Taxonomy: Show in REST, Hide default Gutenberg Panel · Issue #6912 · WordPress/gutenberg https://github.com/WordPress/gutenberg/issues/6912#issuecomment-428403380

I’ve created a custom taxonomy for my custom post type, but I have built a custom interface for assigning the tax (a drop-down as I want only max 1 term assigned) as part of a metabox for the CPT. ...

物草 灸太郎
物草 灸太郎

WordPressでホームページを制作しつつ、休日は畑を耕したりDIYを楽しんでいます。

Loading...

コメントをどうぞ

  • メールアドレスが公開されることはありません。
  • コメント欄にURLは入力できません。
  • このサイトはreCAPTCHAによって保護されており、Googleのプライバシーポリシー利用規約が適用されます。