gpt4 book ai didi

mysql - 在 WordPress 中,我需要先进行排序,然后执行 where 子句...但我无法让它工作

转载 作者:行者123 更新时间:2023-11-29 13:49:16 24 4
gpt4 key购买 nike

我有一个需要按时间顺序排列的帖子列表。这些字段都是自定义的,我正在使用高级自定义字段插件,但这应该不重要。

我想做的是首先按日期对项目进行排序,然后执行小于或等于今天日期的操作,然后将其限制为一个。从高层次的角度来看,我试图从帖子列表中获取下一个事件(事件 = 1 个帖子)。

我环顾四周并尝试了一些示例,但似乎没有什么可以正确排序。该日期以长文本形式存储在数据库中,格式为 20130609 yyyymmdd。

我的 WP_Query:

$type = 'round';
$date = date('Ymd');
print $date;
$args=array(
'post_type' => $type,
'post_status' => 'publish',
'posts_per_page' => 1,
'meta_key' => 'race_date',
'meta_compare' => '<=',
'meta_value' => '20130603', //Test date
'orderby_meta_key' => 'race_date',
'orderby_order' => 'ASC',
);

提前致谢,如果您知道答案,请您介意解释一下,因为我认为这个问题在其他问题中已经出现过很多次,但仅适用于该问题而不是普遍存在。

:)

最佳答案

看起来像你的meta_value是一个字符串,这就是 <= 的原因不管用。尝试将参数作为整数传递,并添加 type => 'NUMERIC' ,这会将数据库存储的字符串处理为数字。

编辑:看起来您也可以使用DATE作为type在你的情况 [codex] .

关于mysql - 在 WordPress 中,我需要先进行排序,然后执行 where 子句...但我无法让它工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16918510/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com