这个查询与WordPress 2.9.2不兼容吗?
题
我一直对此感到困惑两天。仍然无法弄清楚。
我正在使用PC上Localhost上的Xampplite在多个版本的WordPress中测试主题版本。
我在WP 2.9.2上遇到问题,在WP的任何其他较新的安装上都不会发生。
看看下面的查询。只要我将评论的线路放置在适当的位置,它就可以了。但是,当我删除这条线时,它会使我的Xampplite Apache Server崩溃。 wtf?
$the_query = new WP_Query(array(
'posts_per_page' => 5,
'offset' => 0,
'order' => 'ASC',
'post__not_in' => get_option("sticky_posts"),
// 'cat' => get_cat_ID('top-menu'),
));
print "<p>header.php";exit;
我什至尝试将CAT属性硬编码为静态编号:
'cat' => 3
它仍然崩溃!
这是代码,WordPress 2.9.2还是我的Xamplite设置的问题?它在我在同一盒子上设置的所有较新版本的WP中都可以使用它似乎很奇怪。
解决方案
我唯一看到的甚至是句法上可疑的东西是 showposts
可以替换 posts_per_page
.
其他提示
现在意识到这个旧的,但这可以帮助人们通过Google找到这一点:
在运行类似代码的函数中,我遇到了Apache死亡的问题 pre_get_posts钩子. 。问题是我错过了条件:
$query->is_main_query()
这意味着它正在为所有查询做工作,而不仅仅是主要问题。补充说解决了问题。我使用的完整条件是(然后是以下其他代码:
if ( ! is_category() || ! $query->is_main_query() || ! is_a( $query, 'WP_Query' ) )
return;