うさぎのイラスト

ネットアンサー55備忘録

web技術を書いていきます

カスタム投稿タイプfunctions.php設定

-2015年09月01日-
カスタム投稿設定 タクソノミーをつけない時
//(ギャラリー)カスタム投稿設定
add_action('init', 'add_gallery_post_type');
function add_gallery_post_type() {
    $params = array(
            'labels' => array(
                    'name' => 'gallery',
                    'singular_name' => 'gallery',
                    'add_new' => '新規追加',
                    'add_new_item' => 'galleryを新規追加',
                    'edit_item' => 'galleryを編集する',
                    'new_item' => '新規gallery',
                    'all_items' => 'gallery一覧',
                    'view_item' => 'ページを確認',
                    'search_items' => '検索する',
                    'not_found' => 'galleryが見つかりませんでした。',
                    'not_found_in_trash' => 'ゴミ箱内にgalleryが見つかりませんでした。'
            ),
            'public' => true,
            'has_archive' => true,
			'menu_position' => 20,
            'supports' => array(
                    'title',
                    'editor',
                    'author',
                    'custom-fields',
            ),
            'taxonomies' => array('gallery_cat')
    );
    register_post_type('gallery', $params);
	
}

カスタム投稿設定 タクソノミーをつける時
//(phpの)カスタム投稿設定
add_action('init', 'add_ph_post_type');
function add_ph_post_type() {
    $params = array(
            'labels' => array(
                    'name' => 'php',
                    'singular_name' => 'ph',
                    'add_new' => '新規追加',
                    'add_new_item' => 'phpを新規追加',
                    'edit_item' => 'phpを編集する',
                    'new_item' => '新規php',
                    'all_items' => 'php一覧',
                    'view_item' => 'ページを確認',
                    'search_items' => '検索する',
                    'not_found' => 'phpが見つかりませんでした。',
                    'not_found_in_trash' => 'ゴミ箱内にphpが見つかりませんでした。'
            ),
            'public' => true,
            'has_archive' => true,
			'menu_position' => 20,
            'supports' => array(
                    'title',
                    'editor',
                    'author',
                    'custom-fields',
            ),
            'taxonomies' => array('ph_cat')
    );
    register_post_type('ph', $params);
	
	/* カスタムタクソノミーを定義 */
	register_taxonomy(
	    'ph_cat',
	    'ph',
	    array(
	    'label' => 'phカテゴリーから探す',
	    'hierarchical' => true,//カテゴリタイプ
	    'rewrite' => array('slug' => 'area')
	    )
	);
}

/* 管理画面一覧にカテゴリを表示 */
function manage_ph_columns($columns) {
	$columns['ph_cat'] = "phカテゴリー";
	return $columns;
}

function add_ph_column($column_name, $post_id){

	//場所で探す
	if( $column_name == 'ph_cat' ) {
		//カテゴリー名取得
		if( 'ph_cat' == $column_name ) {
			$ph_category = get_the_term_list($post_id, 'ph_cat', '', ', ', '' );
		}

		//該当カテゴリーがない場合「なし」を表示
		if ( isset($ph_category) && $ph_category ) {
				
				echo $ph_category;
			} else {
				echo __('None');
		}

	}
}
add_filter('manage_edit-ph_columns', 'manage_ph_columns');
add_action('manage_posts_custom_column',  'add_ph_column', 10, 2);

参考サイト:かちびと.net