記事の表示順をカスタムフィールドの値で制御する

WordPressでは記事の表示順は日付の最新順がデフォルトです。
これをサイト運営者側で自由にコントロールしたいことは多々あります。
いろいろな方法がありますが、今回はカスタムフィールドの値でコントロールする方法のご紹介です。

表示順の数字を入力するためのカスタムフィールド(型は「数値」)を登録します。
このフィールドに入れた数字の小さい順に記事が並ぶようにしたいなら、

$post = get_posts( array(
  'post_type' => $post_type,
  'post_status' => 'publish',
  'posts_per_page' => -1,
  'meta_key' => 'order_num', //カスタムフィールド名
  'orderby' => 'meta_value_num',
  'order' => 'ASC'
));

‘meta_key’でカスタムフィールド名(型は「数値」)を指定し、
‘orderby’で’meta_value_num’を指定します。

これで、記事の表示順を自由に設定することができます。