$applicationQuery = new WP_Query(array( 'post_type' => 'page', 'post_status' => 'any' ));
if($applicationQuery->have_posts()){
$header_text = "Got post (GOOD)";
}
else{
$header_text = "No post (BAD)";
}
同样的问题,如果我对page
使用post_type
,则查询会产生结果,但如果我将post_type
更改为post
或我自己的custom_post_type
没有结果。为什么?如何解决此问题并查询我的自定义帖子类型?
答案 0 :(得分:1)
试试这段代码。
$applicationQuery = query_posts( array( 'post_type' => array('page') ) );
while (have_posts()) : the_post();
//echo the_title();
endwhile;
答案 1 :(得分:0)
我通过在查询数组中添加'post_status' => 'published'
来解决问题。
修改:根本原因是因为自定义帖子是以编程方式创建的(而不是通过管理信息中心),并且这些帖子的post_status
设置为published
。< / p>
Wordpress不知道published
,默认情况下它只识别publish
。查询中的any
值实际上并未查找&#34;任何&#34; post_status,但&#34;任何公认的&#34; post_status。