如果看不到损坏的代码,很难说,但您的过滤器应该是这样的:
function pregp_wpse_97354($qry) {
if (is_front_page() && is_main_query() && is_user_logged_in()) {
$qry->set(\'cat\',2);
$qry->set(\'posts_per_page\',5);
$qry->set(\'orderby\',\'date\');
$qry->set(\'order\',\'DESC\');
}
}
add_action(\'pre_get_posts\',\'pregp_wpse_97354\');
您提到了一些关于用户登录的信息,您的代码没有检查这些信息,但我将其加入了。这将在加载主题模板之前运行,因此如果这是以登录用户为条件的,则需要在过滤器回调中包含该检查。