具有条件自定义字段的复杂 wordpress 查询



我正在尝试在侧边栏中显示日历。应在此日历中显示的帖子具有一个名为 event_date 的自定义字段。该字段填充了一个日期,格式类似于 YYYYMMDD。我试图让未来的事件出现。

我的第一个计划是仅显示带有event_date字段的帖子,这是成功的:

<?php
$args = array
  (
  'showposts' => 10,
  'meta_key' => 'event_date',
  'meta_value' => '',
  'meta_compare' => '!='
  );
query_posts( '$args' );
?>

但我不知道如何从这里开始,只能过滤掉未来的事件。当然,我可以稍后在while循环中进行过滤,但这听起来不像是一个干净的解决方案。

如果可以按日期对它们进行排序,那就更令人惊讶了,但除此之外,我只会将所有内容排在一个数组中并从那里计算顺序。

使用时间戳而不是 yyyymmdd 不是解决方案,因为这需要对编辑者进行大量教育。

希望有人能为我指出正确的方向。提前非常感谢!

输入您的问题总是有帮助的。知道了!无论如何,感谢您的阅读!

这是我的解决方案,愚蠢的是我以前没有弄清楚这一点:

<?php
$args = array
(
'showposts' => 10,
'meta_key' => 'event_date',
'order' => 'ASC',
'orderby' => 'meta_value',
'meta_value' => date("Ymd", date("U")-3600*24),
'meta_compare' => '>'
);
query_posts( $args );
?>

最新更新