我正在尝试使用WP_Query
对象来编写一个新的查询函数。
我创建了一个新的模板文件,并把以下内容:
$query_args = array(
'post_type' => 'page',
'post_parent=41',
);
// The Featured Posts query.
$results = new WP_Query($query_args);
但是我用什么参数,查询不会改变。它看起来好像查询已经初始化,并且创建新的WP_Query
对现有查询没有任何影响。
在我的代码之前调用的唯一的wordpress函数是get_header()
,它不包括任何调用WP_Query
或query_posts
。
我把下面的线,找出实际的SQL查询是什么:
echo $GLOBALS['wp_query']->request;
实际的SQL查询:
SELECT wp_posts.* FROM wp_posts WHERE 1=1 AND (wp_posts.ID = '14') AND wp_posts.post_type = 'page' ORDER BY wp_posts.post_date DESC
当我改变我的$query_args
这个查询不会改变。
我在想什么时候全局变量$wp_query
被初始化了,我该怎么做才能使用我自己的查询呢?
要完成这种反应。我还必须重写一些值并将它们设置为null来运行查询:'$ qry-> set('p',null); $ qry-> set('page_id',null); ' – Rufein 2015-02-03 15:20:27