メディアにカテゴリーやカスタムカテゴリーを追加する方法

メディアは基本的にpost typeをattachmentとしたものと同種なので、

function gloc_register_taxonomy_for_images() {
register_taxonomy_for_object_type( 'category', 'attachment' ); 
}
add_action( 'init', 'gloc_register_taxonomy_for_images' );
function gloc_add_image_category_filter() {
$screen = get_current_screen();
if ( 'upload' == $screen->id ) {
$dropdown_options = array( 'show_option_all' => '全部見る', 'hide_empty' => false, 'hierarchical' => true, 'orderby' => 'name', );
wp_dropdown_categories( $dropdown_options );
}
}
add_action( 'restrict_manage_posts', 'gloc_add_image_category_filter' );

のようにする。カスタムタクソノミーを使う場合は、そのタクソノミーを登録して、register_taxonomy_for_object_type()する:

function gloc_register_taxonomy_for_images() {
register_taxonomy( 'media_cat', 
array('attachment'),
array('hierarchical' => true,
'labels' => array(
'name' => 'Media Category',
),
'show_admin_column' => true, 
'show_ui' => true,
'query_var' => true,
'rewrite' => array( 'slug' => 'media_cat' ),
)
);   
register_taxonomy_for_object_type('media_cat', 'attachment');
}
add_action( 'init', 'gloc_register_taxonomy_for_images' );

のようにする。register_taxonomy()は他にも設定できるので、codex参照のこと。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です