カスタム投稿の設定サンプルと、カテゴリをセットする際の定義です。
本家リファレンス→関数リファレンス/register post type
/** Add custom post type. */
add_action('init', 'register_karacoro_taxonomy11');
function register_karacoro_taxonomy11() {
$labels = array('name'=>'TOPインフォメーション','singular_name'=>'information');
$args = array(
'labels' => $labels,
'public' => true,
'query_var' => true,
'rewrite' => true,
'capability_type' => 'post',
'hierarchical' => false,
'menu_position' => 21,
'supports' => array('title','editor')
);
register_post_type('information',$args);
register_taxonomy_for_object_type('category', 'information');
}
解説:
2行目) add_action(‘init’,’関数名’) →init時に実行するカスタム投稿定義用の関数名。
4行目) ‘name’には、管理画面に表示されるラベル名。’singular_name’には、このカスタム投稿の識別名を入れます。
5-14行目)カスタム投稿のオプションをセットします。
‘labels’ => $labels, →管理画面に表示する投稿タイプの名前
‘public’ => true,
→デフォルトはfalse.trueにすると、’show_ui'(管理画面への表示),’publicly_queryable’(カスタム投稿タイプの機能でページ生成),’show_in_nav_menus’(投稿タイプをカスタムメニューで選択できるようにする)がtrueにセットされ、’exclude_from_search’(投稿タイプを検索対象に含めるか)がfalseになる。
‘query_var’ => true, →生成する個別ページのURLフォーマット(投稿タイプ名=記事のスラッグ)
‘rewrite’ => true, →ページごとにパーマリンクを設定したとき、有効にするか
‘capability_type’ => ‘post’, →投稿タイプの閲覧・編集・削除の権限制御に使用する。
‘hierarchical’ => false, →この投稿タイプが階層かどうか。
‘menu_position’ => 21, →投稿タイプが表示されるメニューの位置。
‘supports’ => array(‘title’,’editor’) →記事編集画面に表示する編集エリアパーツ。(初期値: title と editor )
15行目)register_post_type(‘information’,$args); →カスタム投稿タイプを登録。
16行目)register_taxonomy_for_object_type(‘category’, ‘information’); →カテゴリーを使用可能にする。