カスタム投稿タイプの作成時にブロックエディタ ( Gutenberg ) を有効化する方法

  • ブックマーク
  • -
    コピー
カスタム投稿タイプを作成する場合はregister_post_type関数を使えば簡単に新しいカスタマ投稿タイプを作成することができます。詳しくは下記の記事をご覧ください。
しかし WordPress 5.0から搭載されたブロックエディタ ( Gutenberg ) を有効化するにはさらに一行コードを追加する必要があります。

'show_in_rest' => true,

register_post_type関数の中で上記のコードを追記すると新たに作ったカスタム投稿でもブロックエディタであるGutenberg ( グーテンベルグ ) を使うことができます。 前述した記事にならってregister_post_typeを指定するサンプルコードも後述します。

<?php
 
// カスタム投稿タイプの作成
function create_posttype() {
    register_post_type( 'new_posttype',
        array(
            'labels'          => array(
                'all_items'          => '一覧を表示',
                'name'               => '新しい投稿タイプ',
                'singular_name'      => '新しい投稿タイプ',
                'menu_name'          => '新しい投稿タイプ',
                'add_new'            => '新規追加',
                'add_new_item'       => '新しい投稿タイプを追加',
                'edit'               => '編集',
                'edit_item'          => '新しい投稿タイプの編集',
                'view'               => '表示',
                'view_item'          => '新しい投稿タイプを表示',
                'search_items'       => '新しい投稿タイプの検索',
                'not_found'          => '見つかりません',
                'not_found_in_trash' => 'ゴミ箱にはありません',
                'parent'             => '親',
            ),
            'description'     => '',
            'show_ui'         => true,
            'show_in_menu'    => true,
            'capadility_type' => 'post',
            'hierarchical'    => false,
            'rewrite'         => true,
            'query_var'       => true,
            'has_archive'     => true,
            'public'          => false,
            'supports'        => array( 'title','editor','thumbnail' ),
            'menu_position'   => 2,
            'show_in_rest' => true,

        )
    );
    // 新しいカテゴリーの追加
    register_taxonomy(
        'new_category',
        'new_posttype',
        array(
            'hierarchical'   => true,
            'label'          => '新しいカテゴリー',
            'show_ui'        => true,
            'query_var'      => true,
            'rewrite'        => true,
            'singular_label' => '新しいカテゴリー'
        )
    );
}
 
// 上記で作った機能の読み込み
add_action( 'init', 'create_posttype' );

supportsの項目で新しくつくった投稿タイプでサポートする項目を指定できますが、editorが追加されていなければブロックエディタを有効にするコードが記載されていても有効化されないので気をつけましょう。

関連リンク

  • ブックマーク
  • -
    コピー

この記事を書いた人

Susumu Seino

1988年 東京都足立区生まれ。瀬戸内海の小島と東京に拠点を持ち、2020年からは夫婦でアドレスホッピングを計画しているデジタルノマドな日本人。デジタルパブリッシング代理店のアニューマの創業者です。