管理で投稿の順序を変更するには?


8

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

回答:


16

常に「タイトル」列をクリックして投稿をタイトルでソートしたくない場合は、このコードを現在アクティブな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');


アクションの前にチェックするのではなく、関数内で使用してもよいですかif ( ! is_admin ) { return; }
urok93

あなたならできると思います。
Michael Ecklund、2012年

「return $ query;」を追加する必要があります。関数が終了する前に、それ以外の場合、これは後のワードプレスエディションでは機能しません。
Jobst 2017

プラグインがこの関数を実行していて、カスタム関数をオーバーライドしていると思います。プラグインではなくコードが実行されるようにするためのフックはありますか?
Thomas_Hoadley

7

ああ、その小さなタイトルをクリックしてアルファベット順に並べ替えてください...

ここに画像の説明を入力してください


-1

あなたはいつでもアドレスに追加することができます:

/edit.php?post_type=properties&orderby=date&order=desc


post_typeここでなぜカスタムなのか、OPに一般的な答えを与えてください。タイトル列をクリックして、注文を順番に並べ替えることができます
bravokeyl
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.