管理者で投稿の順序を変更するにはどうすればよいですか?
2 回答
- 投票
-
- 2012-09-27
常に[タイトル]列をクリックして投稿をタイトルで並べ替えたくない場合は、このコードを現在アクティブな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 you don't wish to always click the "Title" column to sort your posts by title, you can place this code in either your currently active WordPress theme's
functions.php
file, or within a plugin. This will automatically always sort your posts for you, so you don't have to click the title column every time.You can use this for setting default sort order on post types.
/* 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'); }
You can use some of these example conditions...
/* 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'){ }
If you wanted to apply this sorting on ALL post types, regardless of whether or not they are "built-in"...
Change this:
$post_types = get_post_types(array('_builtin' => true), 'names');
To this:
$post_types = get_post_types('', 'names');
-
アクションの前にチェックするのではなく、関数内で使用しても大丈夫ですか `if(!is_admin){ 戻る; } `Is it ok to use within the function rather than check before the action `if ( ! is_admin ) { return; }`
- 0
- 2012-09-30
- urok93
-
私はあなたがそれをすることができると思います.I suppose you could do that.
- 0
- 2012-10-01
- Michael Ecklund
-
「return $ query;」を追加する必要があります.関数が終了する前に、そうでない場合、これは後のワードプレス版では機能しません.You must add a "return $query;" before function end, otherwise this will not work in later wordpress editions.
- 0
- 2017-04-20
- Jobst
-
プラグインがこの関数を実行していて、カスタム関数をオーバーライドしていると思います.プラグインではなくコードが実行されるようにするためのフックはありますか?I think a plugin is running this function and overriding my custom function. Is there a hook to ensure that my code is run rather than the plugins?
- 0
- 2018-08-20
- Thomas_Hoadley
-
- 2012-09-27
ああ、アルファベット順の並べ替えを切り替えるには、その小さなタイトルをクリックしてください...
Ah, click that little title thingy to toggle alphabetical sorting....
管理ダッシュボードで投稿の順序を変更して、最新のものではなく、タイトルに従ってアルファベット順に表示するにはどうすればよいですか?