當嘗試輸出按作為 post meta 給出的日期值排序的帖子時,輸出不符合預期,我無法弄清楚原因。
$tourDates = get_posts(array(
'post_type' => 'tour',
'numberposts' => 4,
'meta_key' => '_sm_tour_date',
'orderby' => 'meta_value_date',
'meta_type' => 'DATE',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => '_sm_tour_date',
'compare' => '>=',
'value' => date('Y-m-d')
)
)
));
每個帖子的日期都存盤為 YYYY-MM-DD,這在我在前端添加每個事件日期的輸出時得到確認(這顯示了它是如何以錯誤的順序輸出的)。

雖然實際上想不出任何要改變的東西,而且我瀏覽過的檔案似乎表明我的代碼是正確的(meta_query 也是如此)。
我也沒有自定義排序插件來更改排序規則。
有沒有人有任何提示或想法?
uj5u.com熱心網友回復:
只是一個猜測,但嘗試將 'orderby' 值更改為 'meta_value' 而不是使用 'meta_value_date'。
如果這不起作用,我通常很難處理使用 meta_query 的 get_posts 查詢。你使用 WP_Query 而不是 get_posts 嗎?
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/331153.html
標籤:WordPress的
