カスタム投稿タイプを登録します。
register_post_type($post_type,$args);| 引数 | 必須/任意 | 引数に指定するもの |
|---|---|---|
| 第1引数 $post_type | 必須 | カスタム投稿タイプの名前を指定(文字列)※20文字まで、小文字英数字、アンダースコア、ダッシュ |
| 第2引数 $args | 任意 | カスタム投稿タイプの仕様を文字列か配列で指定主なパラメーターは以下の通りです。 label 管理画面に表示するカスタム投稿タイプの名前(文字列)public カスタム投稿タイプを一般に公開するかどうか(真偽値)show_in_rest REST APIにカスタム投稿タイプを含めるかどうか(真偽値)has_archive アーカイブページを持つかどうか(真偽値)delete_with_user ユーザーを削除した後、コンテンツも削除するかどうか(真偽値)exclude_from_search 検索から除外するかどうか(真偽値)hierarchical 階層化するかどうか(真偽値)query_var クエリパラメーターを使えるようにする(真偽値/文字列)menu_position 管理画面に表示するメニューの位置(整数)supports カスタム投稿タイプがサポートする機能(配列)すべてのパラメーターの詳細は下記より参照ください(英語) https://developer.wordpress.org/reference/functions/register_post_type/ 初期値: [](空の配列) |
戻り値(返す値):登録に成功したカスタム投稿タイプのオブジェクト(失敗の場合はエラーオブジェクト)
【引数とは】
テンプレートタグ(=関数)を実行する際に、引数を渡すことができるテンプレートタグがあります。引数は、関数の中で使われるので、渡す引数の値によって実行結果が変わってきます。何を処理したいのか、どのようなデータを取得したいのかによって渡す引数が変わります。
【引数について】
下記のコード例では、カスタム投稿タイプ「セミナー」を追加しています。
function cpt_register_seminar() {
$args = [
'label' => 'セミナー',
'labels' => [
'singular_name' => 'セミナー',
'edit_item' => 'セミナーを編集',
'add_new_item' => '新規セミナーを追加'
],
'public' => true, //カスタム投稿タイプを一般に公開するかどうか
'show_in_rest' => true, //REST APIにカスタム投稿タイプを含めるかどうか → カスタム投稿タイプでブロックエディタを使うならtrue
'has_archive' => true, //アーカイブページを持つかどうか
'delete_with_user' => false, //ユーザーを削除した後、コンテンツも削除するかどうか
'exclude_from_search' => false, //検索から除外するかどうか
'hierarchical' => false, //階層化するかどうか
'query_var' => true, //クエリパラメーターを使えるようにする → プレビュー画面を使うためにはtrue
'menu_position' => 5, //管理画面に表示するメニューの位置
'supports' => [
'title',
'editor',
'thumbnail',
'custom-fields'
], //カスタム投稿タイプがサポートする機能
];
register_post_type('seminar', $args);
}
add_action('init', 'cpt_register_seminar');※当サイトでは初期値とデフォルト値の言葉の定義を区別せず、原則統一して初期値を採用しています。