如何使用wp_Query选择本周内的事件

时间:2018-08-16 作者:BudBroesky

我正在尝试创建一个事件页面,列出一周内的事件(自定义帖子类型)。我很难正确地选择只有“start\\u date”在本周内的帖子。

这是我的代码:

    $day = date(\'w\');
    $week_start = date(\'d-m-Y\', strtotime(\'-\'. $day . \' days\'));
    $week_end = date(\'d-m-Y\', strtotime(\'+\' . (6 - $day) . \' days\'));

    $args = array(
        \'post_type\' => \'hcc_events\',
        \'order\' => \'ASC\',
        \'meta_key\' => \'start_date\',
        \'orderby\' => \'meta_value\',
        \'posts_per_page\' => -1,
        \'meta_query\' => array(
            \'relation\' => \'AND\',
            array(
                \'key\' => \'start_date\',
                \'value\' => $week_start,
                \'compare\' => \'>=\',
                \'type\' => \'DATE\'
            ),
            array(
                \'key\' => \'start_date\',
                \'value\' => $week_end,
                \'compare\' => \'<=\',
                \'type\' => \'DATE\'
            )
        )
    );
现在什么都没有输出。感谢您的帮助!

2 个回复
最合适的回答,由SO网友:BudBroesky 整理而成

在ACF和我的代码中将日期格式更改为Y-m-d是修复一切的方法!

SO网友:Oussama Khoubran

这是wordpress提供的简单方法:

$loop = new WP_Query(
    array(
        \'post_type\' => \'custom_post_type\',
        \'posts_per_page\' => 7,
        \'meta_key\' => \'meta_key\',
        \'orderby\' => \'meta_value_num\',
        \'date_query\' => array(
            \'date_query\' => array(
                array(
                    \'year\' => date(\'Y\'),
                    \'week\' => date(\'W\'),
                ),
            ),
        ),

    )
);

结束

相关推荐

如何从‘All in one Events Calender’插件中获取JSON格式的所有事件?

我正在使用All in one Events Calendar 添加事件的插件。它在CMS中工作良好。我想在移动版本中显示事件数据。我用过这个JSON-API 用于获取json格式的web服务。为了获得所有事件,我无法找到任何插件来满足我的要求。所以我开始编写php代码并上传getevents.php 到www/.../services/getevents.php当我执行该文件时,它会重定向到cms中的日历页。但我期待所有事件的json格式输出。请提出解决方案谢谢