1

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

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

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

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

如果可以按日期对它们进行排序,那就更令人惊奇了,否则我将把所有东西都放在一个数组中并从那里计算顺序。

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

希望有人能指出我正确的方向。提前谢谢了!

4

1 回答 1

2

输入您的问题总是有帮助的。我得到了它!无论如何感谢您的阅读!

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

<?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 );
?>
于 2013-01-24T02:51:47.997 回答