web-dev-qa-db-ja.com

管理者の投稿の順番を変更するにはどうすればいいですか?

管理ダッシュボードの投稿の順序を変更して、投稿が最新のものではなく、タイトルのアルファベット順に表示されるようにするにはどうすればよいですか。

8
urok93

投稿をタイトル順に並べ替えるために常に「タイトル」列をクリックしたくない場合は、現在アクティブなWordPressテーマのfunctions.phpファイル、またはプラグイン内にこのコードを配置できます。これは自動的にあなたの投稿を自動的にソートするので、毎回タイトルの欄をクリックする必要はありません。

これを使用して、投稿タイプのデフォルトのソート順を設定できます。

/* Sort posts in wp_list_table by column in ascending or descending order. */
function custom_post_order($query){
    /* 
        Set post types.
        _builtin => true returns WordPress default post types. 
        _builtin => false returns custom registered post types. 
    */
    $post_types = get_post_types(array('_builtin' => true), 'names');
    /* The current post type. */
    $post_type = $query->get('post_type');
    /* Check post types. */
    if(in_array($post_type, $post_types)){
        /* Post Column: e.g. title */
        if($query->get('orderby') == ''){
            $query->set('orderby', 'title');
        }
        /* Post Order: ASC / DESC */
        if($query->get('order') == ''){
            $query->set('order', 'ASC');
        }
    }
}
if(is_admin()){
    add_action('pre_get_posts', 'custom_post_order');
}

あなたはこれらの例の条件のいくつかを使うことができます...

/* Effects all post types in the array. */
if(in_array($post_type, $post_types)){

}

/* Effects only a specific post type in the array of post types. */
if(in_array($post_type, $post_types) && $post_type == 'your_post_type_name'){

}

/* Effects all post types in the array of post types, except a specific post type. */
if(in_array($post_type, $post_types) && $post_type != 'your_post_type_name'){

}

あなたが「ビルトイン」であるかどうかにかかわらず、すべての投稿タイプにこのソートを適用したい場合は...

これを変更してください:$post_types = get_post_types(array('_builtin' => true), 'names');

これに:$post_types = get_post_types('', 'names');

14
Michael Ecklund

ああ、アルファベット順の並べ替えを切り替えるにはちょっとそのタイトルをクリックしてください....

enter image description here

6
markratledge