WordPress ブロックエディタ Gutenberg をブロックせよ

wordpress

WordPress5.0から投稿画面が変わり、「Gutenberg」というブロックエディタになりました。が、………ダメだこりゃ。慣れない。使いにくい。

単純にテキストや画像を投稿するだけならいいかもしれないけれど、プラグインやらカスタム投稿やらカスタムフィールドやらを駆使して、固定ページにコードを記述するには不向き。
というか、<br>タグが消えてしまうので普通に使えないし、プラグイン「Advanced Custom Fields」のフィールドは、位置によっては表示されません(2019/3現在)。

Gutenbergを無効化するプラグイン

手っ取り早く、Gutenbergを無効化するなら、プラグイン「Classic Editor」が便利です。

ClassicEditor

インストール→有効化するだけで、懐かしき投稿画面に戻ります。

Classic Editorを有効化(Gutenbergを無効化)したうえで、「設定」→「投稿設定」から、ユーザーごとに「クラシックエディター(Classic Editor)」「ブロックエディター(Gutenberg)」を選択することも出来ます。

タグの知識のないユーザーは「ブロックエディター」で、
WPを設定するユーザーは「クラシックエディター」を選択するのが良いでしょう。

プラグインなしで細かく無効化する

プラグインなしでも functions.php に記述することで投稿タイプやユーザーによって細かく無効化できます。

完全にGutenbergを無効化

add_filter( 'use_block_editor_for_post', '__return_false' );

固定ページだけでGutenbergを無効化

add_filter( 'use_block_editor_for_post_type', 'disable_gutenberg', 10, 2 );
function disable_gutenberg( $use_block_editor, $post_type ) {
  if ( $post_type === 'page' ) return false;
  return $use_block_editor;
}

特定の投稿タイプでGutenbergを無効化

add_filter( 'use_block_editor_for_post_type', 'disable_gutenberg', 10, 2 );
function disable_gutenberg( $use_block_editor, $post_type ) {
  if ( $post_type === '投稿タイプスラッグ' ) return false;
  return $use_block_editor;
}

固定ページおよび特定の投稿タイプでGutenbergを無効化

add_filter( 'use_block_editor_for_post_type', 'disable_gutenberg', 10, 2 );
function disable_gutenberg( $use_block_editor, $post_type ) {
  if ( $post_type === 'page' && '投稿タイプスラッグ' ) return false;
  return $use_block_editor;
}

「Custom Post Type UI」と「Advanced Custom Fields」対応

カスタム投稿プラグイン 「Custom Post Type UI」を使っている場合は、「Custom Post Type UI」の「投稿タイプ編集」で「REST API で表示」を「false」にすることで、その投稿タイプのみを無効化できます。

また、カスタムフィールドプラグイン「Advanced Custom Fields」でフィールドを追加している場合、フィールドの位置が「通常(コンテンツエディタの後)」か「サイド」ならばGutenbergでも表示されますが、「高(タイトルの後)」の場合は表示されないので、Gutenbergを無効化するか、プラグインのアップデートを待つしかありません(WP5.1では未検証)。