Gutenbergで不要なブロックを非表示にする方法(特定ブロックのみ表示する)

  • 公開日:2019/8/20

Gutenbergには多くのブロックがデフォルトで用意されていますが、サイトやクライアントによっては使用する予定のないブロックもあります。これらの不要なブロックは非表示にしてしまった方がスッキリするのでその方法です。
と言いつつも、だいたい使用するブロックの方が数が少ないので、ここでは使用を許可するブロックを指定して表示する方法になります。

functions.phpへ以下のように記述します。

add_filter('allowed_block_types', 'mytheme_allowed_block_types');
function mytheme_allowed_block_types($allowed_block_types) {
    $allowed_block_types = array(
        'core/paragraph',  // 段落
        'core/heading',    // 見出し
        'core/image',      // 画像
    );
    return $allowed_block_types;
}

上記では「段落」「見出し」「画像」の3ブロックだけを表示させるよう指定しています。このように使用を許可するブロックのみ記述することで、不要なブロックを非表示にできるという方法です。

現在の各ブロックを全て書き出してみました。こちらをコピーして、必要なブロックだけを残せばうまくいくと思います。お役に立てば幸いです。

add_filter( 'allowed_block_types', 'mytheme_allowed_block_types' );
function mytheme_allowed_block_types( $allowed_block_types ) {
	$allowed_block_types = array(
		// 一般ブロック
		'core/paragraph',           // 段落
		'core/heading',             // 見出し
		'core/image',               // 画像
		'core/list',                // リスト
		'core/gallery',             // ギャラリー
		'core/quote',               // 引用
		'core/audio',               // 音声
		'core/cover',               // カバー
		'core/file',                // ファイル
		'core/video',               // 動画

		// フォーマット
		'core/preformatted',        // 整形済み
		'core/table',               // テーブル
		'core/code',                // ソースコード
		'core/freeform',            // クラシック
		'core/html',                // カスタムHTML
		'core/pullquote',           // プルクオート
		'core/verse',               // 詩

		// レイアウト要素
		'core/button',              // ボタン
		'core/columns',             // カラム
		'core/media-text',          // メディアと文章
		'core/more',                // 続きを読む
		'core/nextpage',            // 改ページ
		'core/separator',           // 区切り
		'core/spacer',              // スペーサー

		// ウィジェット
		'core/shortcode',           // ショートコード
		'core/archives',            // アーカイブ
		'core/calendar',            // カレンダー
		'core/categories',          // カテゴリー
		'core/latest-comments',     // 最新のコメント
		'core/latest-posts',        // 最新の記事
		'core/rss',                 // RSS
		'core/search',              // 検索
		'core/tag-cloud',           // タグクラウド

		// 埋め込み
		'core/embed',               // 埋め込み
		'core-embed/twitter',       // Twitter
		'core-embed/youtube',       // YouTube
		'core-embed/facebook',      // Facebook
		'core-embed/instagram',     // Instagram
		'core-embed/wordpress',     // WordPress
		'core-embed/soundcloud',    // SoundCloud
		'core-embed/spotify',       // Spotify
		'core-embed/flickr',        // Flickr
		'core-embed/vimeo',         // Viemo
		'core-embed/animoto',       // Animoto
		'core-embed/cloudup',       // Cloudup
		'core-embed/collegehumor',  // CollegeHumor
		'core-embed/dailymotion',   // Dailymotion
		'core-embed/hulu',          // Hulu
		'core-embed/imgur',         // Imgur
		'core-embed/issuu',         // Issuu
		'core-embed/kickstarter',   // Kickstarter
		'core-embed/meetup-com',    // Meetup.com
		'core-embed/mixcloud',      // Mixcloud
		'core-embed/reddit',        // Reddit
		'core-embed/reverbnation',  // ReverbNation
		'core-embed/screencast',    // Screencast
		'core-embed/scribd',        // Scribd
		'core-embed/slideshare',    // Slideshare
		'core-embed/smugmug',       // SmugMug
		'core-embed/speaker-deck',  // Speaker Deck
		'core-embed/ted',           // TED
		'core-embed/tumblr',        // Tumblr
		'core-embed/videopress',    // VideoPress
		'core-embed/wordpress-tv',  // WordPress.tv
		'core-embed/amazon-kindle', // Amazon Kindle

		// 再利用ブロック
		'core/block',               // 再利用ブロック
	);
	return $allowed_block_types;
}