WordPress: 管理画面でカスタム投稿の一覧にカスタムフィールドの値を表示させて、その値順に並べ替える方法

 

 

//カスタム投稿にカスタムフィールドの項目を追加
function add_column_name ( $columns ) {
    $columns['item_id'] = "アイテムID";
    unset($columns['date']);
    return $columns;
}
add_filter( 'manage_items_columns', 'add_column_name' );
 
//カスタムフィールドitem_idの項目に値を表示
function add_column_value ($column_name, $post_ID) {
    if( $column_name == 'item_id' ) {
        echo get_post_meta($post_ID, 'item_id', true);
    }
}
add_filter( 'manage_posts_custom_column', 'add_column_value', 10, 2 );
 
//カスタム投稿itemsの一覧を、カスタムフィールドitem_idの値順に並べ替え
function set_post_types_admin_order( $wp_query ) {
  if (is_admin()) {
    $post_type = $wp_query->query['post_type'];
    if ( $post_type == 'items' ) {
      $wp_query->set('meta_key', 'item_id');
      $wp_query->set('orderby', 'meta_value');
      $wp_query->set('order', 'ASC');
    }
  }
}
add_filter( 'pre_get_posts', 'set_post_types_admin_order' );

 

 

参考サイト:

https://accelboon.com/tn/wordpress%E7%AE%A1%E7%90%86%E7%94%BB%E9%9D%A2%E3%81%AE%E4%B8%80%E8%A6%A7%E3%81%A7%E3%82%AB%E3%83%A9%E3%83%A0%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%95%E3%81%9B%E3%81%9F%E3%81%84/

category cloud