我正在尝试在侧边栏中显示日历。应显示在此日历中的帖子有一个名为 event_date 的自定义字段。该字段填充日期,格式为YYYYMMDD。我尝试将来事件显示出来。
我的第一个计划,仅显示带有event_date字段的帖子,已成功:
<?php
$args = array
(
'showposts' => 10,
'meta_key' => 'event_date',
'meta_value' => '',
'meta_compare' => '!='
);
query_posts( '$args' );
?>
但我不知道如何从这里开始,只过滤掉将来的事件。当然我可以稍后在while循环中过滤,但这听起来不像是一个干净的解决方案。
如果可以按日期对它们进行排序会更加惊人,但除此之外我只需将所有内容都放在一个数组中并从那里计算顺序。
使用时间戳代替yyyymmdd不是解决方案,因为这需要对编辑进行大量的教育。
希望有人可以指出我正确的方向。非常感谢提前!
答案 0 :(得分: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 );
?>