基于多个日期字段的Wordpress查询帖子

时间:2015-05-13 19:20:11

标签: wordpress wp-query advanced-custom-fields

我正在寻找一些专家帮助来解决我在WordPress查询中遇到的问题。我有一个带有多个日期(转发器)字段的帖子类型。这些字段是使用ACF插件制作的。因此,一个帖子有多个日期,可以是过去和将来。现在我想查询按日期排序的所有这些帖子,但跳过过去的所有日期。

所以我有多个日期的多个帖子(比如活动)。例如:

发布A:2015年5月1日,2015年5月20日,2015年5月23日,等等

职位B:2015年5月3日,2015年5月16日,2015年5月20日,等等

职位C:2015年5月2日,2015年5月15日,2015年5月26日,等等

我想先发布这些帖子。所以,如果今天是12岁,我可能想把Post C作为第一个。我想隐藏过去的日期字段。

这是我现在的查询(使用acf文档将子字段值作为元)。

<?php
$paged = (get_query_var('paged') ) ? get_query_var('paged') : 1;

$today = time();

// filter
function my_posts_where( $where ) {

    $where = str_replace("meta_key = 'data_%", "meta_key LIKE 'data_%", $where);

    return $where;
}

add_filter('posts_where', 'my_posts_where');

// args
$args = array(
    'numberposts'   => -1,
    'post_type'     => 'ndtrc',
    'paged' => $paged,
    'posts_per_page'=> 50,
    'orderby' => 'meta_value',
    'order' => 'ASC',
    'meta_query'    => array(
        array(
            'key'       => 'data_%_single_date',
            'compare'   => '<=',
            'value'     => $today,
        ),
    )
);

$the_query = new WP_Query($args);

&GT;

这样做的正确方法是什么?我搜索了论坛,但没有找到正确的方法来实现这一目标。

0 个答案:

没有答案