元查询自4.7.4更新以来中断

时间:2017-04-21 作者:Moritz Friedrich

对自定义帖子类型排序的步骤event 按自定义字段event_date, 我创建了以下操作。直到今天,当我们的网站自动更新到WordPress 4.7.4时,这项功能才得以完美运行。现在查询不会返回event 档案文件此外,管理面板中没有列出任何事件,但表头显示了已发布和计划的帖子数量(请参见图片,注意:Veranstaltungen=事件)。German text, but it'll speak for itself I hope

add_action( \'pre_get_posts\', \'348541_sort_events_by_date\');

function 348541_sort_events_by_date( \\WP_Query $query ) {
    if ( $query->is_post_type_archive( \'event\' ) && $query->is_main_query() ) {
        $query->set( \'meta_query\', [
            [
                \'key\'     => \'event_date\',
                \'value\'   => date( \'d-m-Y\' ),
                \'compare\' => \'>=\',
                \'type\'    => \'date\'
            ]
        ] );

        $query->set( \'meta_key\', \'event_date\');
        $query->set( \'orderby\', \'meta_value\' );
        $query->set( \'order\', \'ASC\');
    }
} );
我查阅了发行说明,但找不到任何内容,即使在“更改的文件”列表中,似乎也没有任何与查询相关的内容,但可能我只是遗漏了一些内容
为什么此查询无法获取我的帖子?

1 个回复
SO网友:Moritz Friedrich

我刚刚发现了问题,但我无法解释事情为什么会这样或如何发展——比较事件的日期格式错误:date( \'d-m-Y\' ) 应该是date( \'Y-m-d\' ).
在更新之前,比较一直有效,所以WordPress存储日期输入的方式一定发生了变化。

相关推荐