获取wordpress中特定日期之间发布的帖子

Men*_*ead 10 php wordpress

我正在开发一个小工具,它将显示两个日期之间发布的帖子,例如1月15日和3月15日,但我不知道它是怎么做的.

我看到一些提到query_posts()的解决方案,但我不认为这是一个很好的解决方案.所以我愿意接受任何有关如何做到这一点的建议.

目前我正在考虑使用pre_get_posts,WP_Query或get_posts,我尝试使用这行代码:

function my_home_category( $query ) 
{
    if ( $query->is_home() && $query->is_main_query() )
    {
        $query->set( 'day', '15');
    }
}
add_action( 'pre_get_posts', 'my_home_category' );
Run Code Online (Sandbox Code Playgroud)

但这会返回任何月份15日发布的所有帖子.我知道我可以设置如下:

 $query->set( 'monthnum', '1');
Run Code Online (Sandbox Code Playgroud)

并获得1月15日发布的帖子,但我想在3月15日至3月15日之间发布所有帖子,我不知道如何实现这一点.

它不必使用pre_get_posts,它可以是get_posts或WP_Query,我只是在寻找一种简单的方法来实现它.

joh*_*d23 24

WP_Query提供了date_query参数,允许您设置之前和之后的范围.

https://codex.wordpress.org/Class_Reference/WP_Query#Date_Parameters

$args = array(
    'date_query' => array(
        array(
            'after'     => 'January 1st, 2015',
            'before'    => 'December 31st, 2015',
            'inclusive' => true,
        ),
    ),
);
$query = new WP_Query( $args );
Run Code Online (Sandbox Code Playgroud)