WordPressでカスタム投稿タイプを追加するには、register_post_type()を使用します。
function create_faq_post_type() {
register_post_type('news', // 投稿タイプ名の定義
array(
'name' => 'news',
'label' => 'ニュース',
'description' => 'ニュース用カスタム投稿タイプ',
'menu_icon' => 'dashicons-book', // このメニューで使用するアイコンの指定
'menu_position' => 6,
'public' => true,
'exclude_from_search' => false,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_rest' => true,
'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'comments' ),
));
register_taxonomy_for_object_type('category', 'news'); // post用のカテゴリを使えるようにする
register_taxonomy_for_object_type('post_tag', 'news'); // post用のタグを使えるようにする
}
add_action( 'init', 'create_faq_post_type' );
register_post_type()関数の第2引数には配列でオプションを指定します。
また、通常の投稿と同じカテゴリやタグを指定できるようにするには、register_taxonomy_for_object_type()を使います。
register_taxonomy_for_object_type('category', 'news');
などとすることで通常の投稿と同じカテゴリが指定可能になり、管理画面のメニューにも表示されるようになります。
コメント