コンテンツにスキップ

カスタム投稿タイプでリビジョンを有効にする方法

メインイメージ

WordPress のカスタム投稿タイプでリビジョン機能を有効にする方法を説明します。

確認時のバージョン

  • WordPress 6.4.3

カスタム投稿タイプ登録時にリビジョンサポートを有効にする

方法は非常にシンプルなので早速結論ですが、カスタム投稿タイプを登録するときにリビジョンサポートを有効にすれば OK です。 リビジョンサポートを有効にするには、 supports の配列に revisions を渡します。

リビジョンサポートを有効にしたカスタム投稿タイプを登録する最小限のサンプルは次のとおりになります。

add_action( 'init', 'example_init' );

function example_init() {
  register_custom_post_types();
}

function register_custom_post_types() {
  register_post_type( 'recipe', [
    'label' => 'レシピ',
    'public' => true,
    'supports' => [
      // タイトルと本文のエディタを有効にする(この 2 つはデフォルトで有効):
      'title', 
      'editor',
      // リビジョンサポートを有効にする:
      'revisions',
    ],
  ] );
}

ポイントは register_post_type() の第 2 引数の連想配列の supportsrevisions です。 これでこの投稿タイプでリビジョン機能が使えるようになります。

デフォルトで用意されている「固定ページ」と「投稿」ではリビジョン機能がデフォルトで有効になっていますが、カスタム投稿タイプではデフォルトでは無効になっているので、リビジョン機能を利用したいときは上のように明示的に有効化する必要があります。

なお、コードで書くのではなくプラグインを使ってカスタム投稿タイプを作成した場合は、プラグインの設定でリビジョンを有効にすれば OK です。

公式リファレンス