カスタム投稿タームの追加
2020-05-18
以前に、カスタム投稿の作成により、投稿の追加はしましたが、このままでも十分ではありますが、カスタム投稿については分類することができずに、通常の投稿でいうカテゴリーにあたる分類がありません。
そこで、今回は、その分類をするために必要なターム(タクソノミー)の追加について、記載していきます。
前回の内容に、追記する形で、記載例をあげていきたいと思います。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
add_action( 'init', 'create_post_type' ); function create_post_type() { register_post_type( 'news', // 投稿タイプ名の定義 array( 'labels' => array( 'name' => __( '新着情報' ), // 表示する投稿タイプ名 'singular_name' => __( '新着情報' ) ), 'public' => true, 'menu_position' =>5, 'has_archive' => false, 'supports' => array('title','editor','excerpt','thumbnail','author') ) ); register_taxonomy( 'pref', // タクソノミーのslug 'news', // 適用するカスタム投稿のスラッグ array( 'hierarchical' => true, // trueだと親子関係が使用可能。falseで使用不可 'label' => '都道府県', // タクソノミー名(カテゴリー名) 'singular_label' => '都道府県', // タクソノミー名(カテゴリー名) 'public' => true, 'show_ui' => true ) ); } |
というように、register_post_type() の後に、register_taxonomy() を追記します。
register_taxonomy() は複数登録していくこともできますが、多ければ、多いほど複雑になるので、今回は一つだけの例とします。
今回の例では、都道府県という分類を追加ということになり、管理画面で確認すると、通常投稿のカテゴリーと同じように項目が追加されているのが、わかると思います。
あとは、管理画面から、カテゴリーと同じように「都道府県」の県名等を追加していけば、新着情報を記事を投稿した際に、都道府県別に分類することができます。
余談
新着情報と都道府県で、ちょっとおかしな組み合わせになっていますが、別記事でまとめておきたいことがあったので、そのための準備となっています。。。