【发布时间】:2016-09-07 14:06:03
【问题描述】:
所以我在 post 类型中添加了一些自定义字段,即 event_startdate 和 event_enddate。我的目标是显示当前正在进行的所有事件(因此当前日期介于开始日期和结束日期之间)。但是,我当前的代码没有显示任何帖子。
这就是我所拥有的:
<?php
$today = date('Ymd');
$args = array (
'posts_per_page' => '9',
'order' => 'ASC',
'orderby' => 'id',
'meta_query' => array(
array(
'key' => 'event_startdate',
'compare' => '>=',
'value' => $today
),
array(
'key' => 'event_enddate',
'compare' => '<=',
'value' => $today
)
)
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
然后是循环的其余部分。我知道循环有效,因为删除 meta_query 时会显示所有帖子。可能是什么问题?我已经尝试了一些不同的日期格式(硬编码),但这似乎并没有解决它。也尝试了在线发布的其他解决方案,但似乎没有一个可以解决问题。
编辑:同时开始处理另一个查询,这次使用的是 TRUE/FALSE 字段 event_featured。除了 args 之外,代码与前面提到的代码相同。也不回帖:
$args = array (
'post_type' => 'post',
'posts_per_page' => '9',
'order' => 'ASC',
'orderby' => 'id',
'meta_query' => array(
array(
'key' => 'event_featured',
'value' => '1',
'compare' => '=='
)
)
);
【问题讨论】:
标签: php wordpress date advanced-custom-fields