正如米洛所说,简单字段目前以一种非首选的方式存储日期。
我现在可以想出两种方法来解决这个问题:
第一:使用sql“手动”获取帖子,并使用mysql函数substr将日期重新设置为可以排序的有效格式。有点麻烦,但可以。
SQL查询类似于:
SELECT
post_id,
DATE_FORMAT(concat(substr(_your_date_meta_key, 7, 4), "-",substr(_your_date_meta_key, 4, 2),"-",substr(_your_date_meta_key, 1, 2)), \'%Y %b %D\') as theDate
from wp_postmeta
where meta_key = "_your_date_meta_key"
order by theDate
您将获得post ID作为回报,然后您可以使用get\\u post()或类似的方法获取这些ID。
第二:使用wp\\u query(正如您已经做的那样)获取所有帖子,然后在PHP中使用usort()对它们进行排序。这取决于你有多少帖子,可以很好地工作。
(三:等几天,让我更新简单字段,支持将日期存储为unixdates,因为这样更有意义!)