查询状态为自定义的帖子

时间:2016-11-22 作者:Terry Kernan

我正在尝试查询一些wordpress帖子,它们的自定义帖子状态为closed.

当我运行此查询时,尽管它们的自定义状态设置为closed, 尽管我已经要求published:

$now = strtotime(date(\'d.m.Y H:i:s\'));
$args = array(
    \'post_type\' => \'vacancy\',
    \'post_status\' => \'published\',
    \'posts_per_page\' => 1000,
    \'orderby\' => \'meta_value_num\',
    \'meta_key\' => \'wpcf-closing-date\',
    \'meta_query\' => array(
        array(
            \'key\' => \'wpcf-closing-date\',
            \'value\' => $now,
            \'compare\' => \'<=\',
        )
    ),
);
$vacancies = new WP_Query($args);
我原以为只有post_status 属于published 会回来的。有人知道为什么会回来吗closed 帖子?

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

正确的post_status 对于“published”(已发布)帖子为“publish”(发布):

\'post_status\' => \'publish\',

SO网友:Benoti

post\\u状态closed 不是默认post\\U状态的一部分。

此自定义帖子状态可能由插件或主题添加。

如果你发现register_post_status 在您的文件中,有自定义的post状态,可能还有要转换的数组closedpending 或者别的什么。

如果没有,请查找add_meta_boxes 行动

您还可以尝试var\\u转储一个关闭的post自定义字段,以查看它是否未添加到自定义元字段。如果是这样的话,您可以通过使用meta_query 参数

希望能给你一些提示!