Gutenbergの準備がまだの人に、WordPressのGutenbergを無効化する方法のまとめ
Post on:2018年8月9日
8月2日にリリースされたWordPress 4.9.8で、次期エディタである「Gutenberg」がダッシュボードに表示され、驚いた人も少なくないと思います。正式な実装は数ヵ月後に予定されており、これは一部の人にとっては素晴らしいニュースであり、他の人にとってはそれほど素晴らしいニュースではないかもしれません。
Gutenbergが正式に実装されると多くのサイトやブログに影響を与えます。一つの選択肢として、Gutenbergを無効化する方法を紹介します。
How to Disable Gutenberg: Complete Guide
ちなみに、4.9.6+であれば「Gutenbergのプラグイン」をインストールすることで、Gutenbergを利用することができます。
現時点では星1が多く、評判はよろしくないようです。
下記は各ポイントを意訳したものです。
※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。
- Gutenbergのリリース前に準備しておくこと
- プラグインでGutenbergを無効にする
- コードでGutenbergを無効にする
- カスタムフィールドに関する注意点
- ダッシュボードでの表示を隠す
- 最後に
Gutenbergのリリース前に準備しておくこと
Gutenberg(別名G7G)のリリースに伴い、あなたには2つの選択肢があります。
- 既存のすべてのサイトやブログでGutenbergが問題ないか検証するために、時間とお金をかける。
- または、準備が整うまでGutenbergを無効にする。
WordPressのコミュニティを見ると、Gutenbergを実装しサポートするのにかかる時間とお金を犠牲にする準備ができているのは、一握りのユーザーだけです。大部分の人は混乱しており、WordPressで動くサイトの膨大な変更を知りません。
ここでは、Gutenbergを無効にするさまざまな方法(プラグインやプログラム的)について説明します。
プラグインでGutenbergを無効にする
Gutenbergを無効にする最も簡単な方法は、プラグインを使用することです。
「Disable Gutenberg」はGutenbergを無効にし、デフォルトのエディタ画面に戻すだけのシンプルなプラグインです。
プラグインのオプションでは、以下の機能も備えています。
- Gutenbergをすべての記事で完全に無効にする
- Gutenbergを特定の記事でのみ無効にする
- Gutenbergを特定のユーザーロールに対して無効にする
フレキシブルでありながらシンプルで、使いやすく簡単です。
訳者注:
当ブログでもさっそく導入してみました。
Disable Gutenberg
記事数が多く、カスタムフィールドなどのメタボックスもGutenbergは不安があるため、Gutenbergを無効にしておきます。
コードでGutenbergを無効にする
コードでGutenbergを無効にする方法もたくさんあります。それぞれを見てみましょう。
Gutenbergを完全に無効にする
Gutenbergを完全に無効にするには、functions.phpまたは自作プラグインで次の行を追加します。
1 |
add_filter('gutenberg_can_edit_post_type', '__return_false'); |
このコードはGutenbergを無効にするための推奨された方法です。gutenberg_can_edit_post_typeにfalseの値を返し、すべての記事(つまり、完全に)に対してGutenbergを無効にします。
特定の記事のみを無効にするには、次の方法を使用してください。
Gutenbergをカスタム投稿タイプで無効にする
GutenbergのエディタはWordPressの投稿でのみ有効です。デフォルトでは、投稿記事と固定ページがこれに含まれます。他の投稿の種類も同様に、gutenberg_can_edit_post_typeを使用して無効にすることができます。
1 2 3 4 5 6 7 8 |
function digwp_disable_gutenberg($is_enabled, $post_type) { if ($post_type === 'book') return false; // post typeを指定 return $is_enabled; } add_filter('gutenberg_can_edit_post_type', 'digwp_disable_gutenberg'); |
このコードでは投稿タイプ「book」に対して、Gutenbergを無効にしています。他の投稿の種類を無効にする場合は「book」を変更してください。
また、カスタム投稿タイプを登録する際にGutenbergを無効にすることもできます。この方法は、エディタパネルを完全に無効にするため、投稿エディタを使用しないCPTにのみ意味をなすだけです。これを行うには、投稿タイプを登録するときにsupportsパラメータからeditorをコメントにして取り除きます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
$args = array( 'label' => __('Books'), 'labels' => $labels, 'supports' => array( 'author', 'custom-fields', // 'editor', // <-- do not add this param 'title', 'thumbnail' ), 'has_archive' => false, 'hierarchical' => false ); register_post_type('books', $args); |
editorパラメータを取り除いたので、Booksの投稿タイプには投稿エディタが含まれていないため、Gutenbergも含まれません。
カスタム投稿タイプを登録するときにGutenbergを無効にする別の方法は、投稿タイプに対してRESTを無効します。これは、show_in_restパラメータをfalseに設定することで実行できます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
$args = array( 'label' => __('Books'), 'labels' => $labels, 'show_in_rest' => false, // set to false to disable G7G 'supports' => array( 'author', 'custom-fields', 'editor', // works even when editor is supported 'title', 'thumbnail' ), 'has_archive' => false, 'hierarchical' => false ); register_post_type('books', $args); |
投稿タイプが投稿エディタをサポートしていても、GutenbergはREST APIを必要とするため、REST APIを無効にしてGutenbergを無効にすることが可能です。
投稿タイプの登録については、WP Codexをチェックしてください。
参考: register post type
メタボックスのGutenbergを無効にする
プラグインの中には、メタボックスを使用しているものもあります。メタボックスとは投稿画面にある「カテゴリ-」「タグ」「カスタムフィールド」などのことです。
メタボックスを利用する画面上でGutenbergエディタを無効にする方法があります
メタボックスを追加するときに、__block_editor_compatible_meta_boxを引数として渡すことができます。
1 |
add_meta_box('metabox_id', 'Metabox Title', 'metabox_callback', null, 'advanced', 'default', array('__block_editor_compatible_meta_box' => false)); |
7番目のパラメータに引数を配列項目として渡しています。メタボックスの追加については、WP Codexを参照してください。
参考: add_meta_box()
古い方法
この方法は非推奨ですが、可能であることを明らかにしておきます。wp-config.phpファイルの「編集が必要なのはここまでです ! WordPress でブログをお楽しみください。」という行の直前に下記のコードを追加します。
1 |
$_GET['classic-editor'] = true; |
これを実行すると、Gutenbergは無効になり、すべての編集画面でデフォルトのエディタ画面が利用できます。しかしもう一度伝えておきます、これはGutenbergを無効にする古い方法です。前述の方法のいずれかを使用してください。
カスタムフィールドに関する注意点
Gutenbergエディタを使用する場合、デフォルトで「カスタムフィールド」のメタボックスは表示されません。「カスタムフィールド」を復活させるには、下記のプラグインが便利です。
ダッシュボードでの表示を隠す
最後にもう一つ、ダッシュボード全体で表示される「Gutenberg を試そう」を隠す方法です。これはプラグインを使用するだけで、簡単に対応できます。
最後に
Gutenbergは現在も進化し続けています。Gutenbergをサイトやブログで使用する前に、必ず十分な検証をしてから導入してください。
sponsors