我正在尝试查询某个作者的所有帖子,并将其分页为该作者。php页面。我尝试过修改WP默认的每页博客设置,但这没有帮助。我看了这里的其他帖子,也能找到解决方案。这适用于我的类别页面和自定义模板页面(author属性除外)。
以下是我的查询内容:
if (get_the_author_meta( \'ID\' )) {
$authorID = get_the_author_meta( \'ID\' );
}
$paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
$args = array(
\'post_type\' => \'post\',
\'author\'=>$authorID,
\'orderby\'=> \'date\',
\'showposts\'=>\'5\',
\'paged\'=>$paged
);
$query = new WP_Query( $args );
我甚至尝试了query\\u posts(),但没有成功。
查询本身可以工作,但分页会中断。有什么想法吗?
最合适的回答,由SO网友:s_ha_dum 整理而成
该页上已存在查询。author.php
是一个optional template file 如果存在,WordPress将用于作者档案。您不必在该页面上创建另一个查询。我认为您的查询和本机查询发生了冲突,至少部分是因为两个查询将使用相同的paged
查询变量。
如果需要更改有关查询的某些内容,可能应该中断该页面的主查询,而不是创建新查询。
function alter_author_wpse_84696() {
if (!is_author()) return false;
global $wp_query;
$wp_query->set(\'posts_per_page\', 10);
$wp_query->set(\'order\', \'ASC\');
}
add_action(\'pre_get_posts\',\'alter_author_wpse_84696\');