初めに、カスタム投稿を追加するときに、’supports’オプションに’page-attributes’を追加します。
親テーマで登録されたカスタム投稿を、小テーマでカスタムする場合は下のコードをfunctions.phpに追加します。
add_post_type_support( 'post_naem', 'page-attributes' );
これでWordPressの標準の順序属性を使えるようになったのでpre_get_postsでクエリを制御します。
function set_custom_post_order($query) {
if (is_admin() && $query->is_main_query() && ($query->get('post_type') == 'post_name')) {
$query->set('orderby', 'menu_order');
$query->set('order', 'ASC');
}
}
add_action('pre_get_posts', 'set_custom_post_order');
最後にカスタム投稿の編集画面でそれぞれの投稿の順序に数値を入力していきます。
一覧画面で順序順に並びました。
さらに複雑な並べ替えをする場合はドラックアンドドロップできるプラグインがおすすめです。
- Post Types Order
-
Intuitive Custom Post Order