function my_custom_init()
{
/*================================================================================================
カスタムタクソノミー「ショップカテゴリー」の追加
==================================================================================================*/
/*「ショップカテゴリー」のラベルの設定
--------------------------------------------------------------------------------------------------*/
$shopcat_labels = array(
'name' => "ショップカテゴリ",
'singular_name' => "ショップカテゴリ",
'search_items' => "カテゴリを検索",
'all_items' => "すべてのカテゴリ",
'parent_item' => "親カテゴリ",
'parent_item_colon' => "親:",
'edit_item' => "カテゴリを編集",
'update_item' => "カテゴリを更新",
'add_new_item' => "新規カテゴリ",
'new_item_name' => "新規カテゴリ名",
'menu_name' => "ショップカテゴリ",
);
/*「ショップカテゴリー」の設定・追加
--------------------------------------------------------------------------------------------------*/
register_taxonomy(
'shopcat',
array( 'shop' ),
array(
'hierarchical' => true,
'labels' => $shopcat_labels,
'show_ui' => true,
'query_var' => true,
'rewrite' => true,
'capabilities' => array('assign_terms' => 'manage_categories' )
));
/*「ショップエリア」のラベルの設定
--------------------------------------------------------------------------------------------------*/
$shoparea_labels = array(
'name' => "ショップエリア",
'singular_name' => "ショップエリア",
'search_items' => "カテゴリを検索",
'all_items' => "すべてのカテゴリ",
'parent_item' => "親カテゴリ",
'parent_item_colon' => "親:",
'edit_item' => "カテゴリを編集",
'update_item' => "カテゴリを更新",
'add_new_item' => "新規カテゴリ",
'new_item_name' => "新規カテゴリ名",
'menu_name' => "ショップエリア",
);
/*「ショップエリア」の設定・追加
--------------------------------------------------------------------------------------------------*/
register_taxonomy(
'shoparea',
array( 'shop' ),
array(
'hierarchical' => true,
'labels' => $shoparea_labels,
'show_ui' => true,
'query_var' => true,
'rewrite' => true,
'capabilities' => array('assign_terms' => 'manage_categories' )
));
/*================================================================================================
カスタム投稿タイプ「ショップ」の追加
==================================================================================================*/
/*「ショップ」のラベルの設定
--------------------------------------------------------------------------------------------------*/
$labels = array(
// 名前
'name' => "ショップ",
// 名前(単数)
'singular_name' => "ショップ",
'add_new' => "新規追加",
'add_new_item' => "新規ショップ追加",
'edit_item' => "ショップを編集",
'new_item' => "新規ショップ",
'view_item' => "表示",
'search_items' => "ショップを検索",
'not_found' => "見つかりません",
'not_found_in_trash' =>"ゴミ箱にはありません",
'parent_item_colon' => '親',
'menu_name' => 'ショップ'
);
/*「ショップ」の設定と追加
--------------------------------------------------------------------------------------------------*/
$shop_args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true, //--------検索結果に含むかどうか
'show_ui' => true,//--------------------デフォルトUIを表示するかどうか
'query_var' => true,//------------------この投稿に使用する query var の名前
'rewrite' => true,//--------------------このフォーマットでパーマリンクをリライトする
'capability_type' => 'shop',//----------通常はpostだが任意のshopにする
'capabilities' => array('edit_posts' => 'edit_shop', //-------------記事の投稿と編集
'publish_posts' => 'publish_shop', //----------記事の公開
'edit_published_posts' => 'edit_published_shop', //---公開した記事の編集
'edit_others_posts' => 'edit_others_shop', //------他のユーザーの記事の編集
'read_private_posts' => 'read_private_shop', //-----他のユーザーの非公開記事の閲覧
'edit_private_posts' => 'edit_private_shop', //-----他のユーザーの非公開記事の編集
'delete_posts' => 'delete_shop', //-----------記事の削除
'delete_published_posts' => 'delete_published_shop', //-公開した記事の削除
'delete_others_posts' => 'delete_others_shop', //----他のユーザーの記事の削除
'delete_private_posts' => 'delete_private_shop'), //---他のユーザーの非公開記事の削除
'has_archive' => true,//--------------アーカイブページの作成
'hierarchical' => false,//------------階層(親・子)をつけるか
'menu_position' => null, //------------メニューの場所
'supports' => array('title','editor','author','thumbnail','excerpt','comments'),// サポートの種類を設定
'taxonomies' => array( 'shopcat', 'shoparea' )
);
register_post_type('shop',$shop_args);
} add_action('init', 'my_custom_init');