WP查询要显示该日期的日期和帖子吗?

时间:2018-02-14 作者:Matthew Woodard

我正在尝试创建一个自定义查询,结果如下。

-- Monday, January 5, 2018 --

这是2018年5月1日的帖子标题

这是2018年5月1日的帖子标题

这是2018年5月1日的帖子标题

-- Tuesday, January 6, 2018 --

这是2018年6月1日发布的帖子标题

这是2018年6月1日发布的帖子标题

这是2018年6月1日发布的帖子标题

-- Wednesday, January 7, 2018 --

这是2018年7月1日的帖子标题

这是2018年7月1日的帖子标题

这是2018年7月1日的帖子标题

。。。等等

我创建了一个具有以下内容的查询参数:

$args = array(
        \'post_type\' => \'show\',
        \'post_status\' => \'publish\',
        \'posts_per_page\' => -1,
        \'orderby\'   => \'meta_value\',
        \'meta_key\'  => \'show_date\',
        \'order\' => ASC
    );
这给了我需要的帖子,但有没有办法在每天之间插入日期?

/TIA公司

1 个回复
SO网友:Matthew Woodard

我可以通过以下方式完成此操作:

$args = array(
    \'post_type\' => \'show\',
    \'post_status\' => \'publish\',
    \'posts_per_page\' => -1,
    \'orderby\'   => \'meta_value\',
    \'meta_key\'  => \'show_date\',
    \'order\' => ASC
);

$query = new WP_Query( $args );

if( $query->have_posts() ) {
        $day_check = \'\';
        while( $query->have_posts() ): $query->the_post();

            $day = date(\'Y-m-d\', strtotime(get_field(\'show_date\')));

            if ($day != $day_check) {
                if ($day_check != \'\') {
                  $output .= \'</ul>\'; // end ul.shows
                }

                $output .= \'<h3 class="date">\' . date(\'l, F jS, Y\', strtotime(get_field(\'show_date\'))) . \'</h3>\';
                // start this date\'s show list
                $output .= \'<ul class="shows">\';
            }

            // what ever you want to show from the posts
            $output .= \'<li>\' . get_the_title() . \'</li>\';

        $day_check = $day;

        endwhile;
        wp_reset_postdata();
}

结束

相关推荐

如果用户已登录并在主页上重定向,则使用PHP

我是一个彻头彻尾的傻瓜,但我正在努力学习,我被难住了。我有一个登录页面作为我的静态主页,我想做一个if语句,这样如果用户登录并转到静态主页,他们就会被重定向到另一个包含内容的页面。到目前为止,这是我所拥有的,但它不起作用:if ( is_user_logged_in() && is_page( home_url ) ) { wp_redirect(\'http://example.com/\') ; } 你能不能不仅给我一个答案,而且给我一个小小的解释,让