wordpress管理画面にカスタム投稿・分類を追加
カスタム投稿(ポスト)・カスタム分類(タクソノミー)を追加するときによく忘れるのでメモ。
register_post_type()関数とregister_taxonomy()関数をinitにフックする。
(テンプレートディレクトリ)/function.php
/** * カスタム投稿・分類登録 */ function regist_customs() { // カスタム投稿の登録 register_post_type( 'product', // 投稿タイプ名称 array( 'labels'=> array( // 各種ラベル 'name' => '商品', 'singular_name' => '商品', 'add_new_item' => '商品を追加', 'add_new' => '商品を追加', 'new_item' => '商品を追加', 'edit_item' => '商品を編集', 'view_item' => '商品を表示', 'search_item' => '商品を検索', 'not_found' => '商品は見つかりませんでした', 'not_found_in_trash' => '商品は見つかりませんでした', ), 'description' => '商品の投稿', // 概要 'public' => true, // 公開 'publicly_queryable' => true, // クエリ公開 'show_ui' => true, // UI生成 'show_in_menu' => true, // メニュー表示 'query_var' => true, // クエリ変数名。true:投稿タイプ名称 'rewrite' => array( // パーマリンクリライト 'slug' => 'product' ), 'capability_type' => 'post', // 権限タイプ(管理者に権限を設けない時はpostでOK) 'has_archive' => true, // アーカイブを作成する 'hierarchical' => false, // 階層を生成する 'menu_position' => null, // 数値で指定。null:コメントの下 'supports' => array( // 編集画面に配置するフォーム 'title', 'editor' ), ) ); // カスタム分類の登録 register_taxonomy( 'product_genre', // 分類名 'product', // 紐づける投稿タイプ名 array( 'label' => 'ジャンル', // 複数形 'public' => true, // 公開 'show_ui' => true, // UI生成 'hierarchical' => true, // true:カテゴリー系, false:タグ系 ) ); } add_action('init', 'regist_customs');