私はたくさん読んだことがありますが、いろいろなことを試してみましたが、それでもacfのdatepickerフィールドで投稿を注文するクエリを取得できません。これが私のコードのようなものです。
$args = array(
'post_type' => 'arm_careers',
'post_status' => 'publish',
'posts_per_page' => -1,
'meta_key' => 'post_date',
'orderby' => 'meta_value_num',
'meta_type' => 'DATE',
'order' => 'ASC',
);
私はPROを使っていません、私は無料のものを使っています。保存フォーマットはyymmdd
です、私もYYYYMMDD
を試しましたが、どちらもうまくいきませんでした。
2018年8月14日、2018年8月2日、2018年8月9日
2018年8月2日、2018年8月9日、2018年8月14日
表示形式はMM d, yy
です。
保存されている形式を次の場所にあるpost_date形式に変換する必要があります。
Y-m-d H:i:s
そのとき初めて、コンパレータは自動的に生成されたクエリオブジェクトと正しく連携します。
ACFは日付をメタ値にyyyymmddとして格納するので、DATEにキャストすると正しく機能しない可能性が非常に高いです。
そして数と比較する必要はありません - 辞書のソートはここでうまくいきます。
これを試して:
$args = array(
'post_type' => 'arm_careers',
'post_status' => 'publish',
'posts_per_page' => -1,
'meta_key' => 'post_date',
'orderby' => 'meta_value',
'order' => 'ASC',
);
PS。 ACFが日付の保存に使用する形式を設定できないことは間違いありません。これらの値を表示したり取得したりするための形式を設定できます。