とあるカスタムフィールドの値を元にして、投稿を並び替える方法です。下記は投稿タイプ「post」の例。
$my_posts = get_posts([
'post_type' => 'post',
'meta_key' => 'metaキー',
'order_by' => 'meta_value',
'order' => 'ASC',
]);
ただこの比較は文字列比較となるので、カスタムフィールドに数値が入っている場合はうまく動作しません。
数値で比較
数値で比較するときは、orderby を meta_value_num にしてあげます。
$my_posts = get_posts([
'post_type' => 'post',
'meta_key' => 'metaキー',
'order_by' => 'meta_value_num',
'order' => 'ASC',
]);