在Auth.php中列出作者的帖子

时间:2012-10-31 作者:WHiSPER

我想在author中列出作者最后的10篇文章。php模板。我使用了以下代码:

<?php while (have_posts()) : the_post(); ?>
    <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>
<?php endwhile;?>
但我只能看到当前作者的最后一篇文章。有什么帮助吗?

2 个回复
最合适的回答,由SO网友:Bainternet 整理而成

最简单的方法是简单地添加:

global $query_string;
query_posts( $query_string . \'&posts_per_page=-1\' );
在您的代码之前,您可以:

<?php
global $query_string;
query_posts( $query_string . \'&posts_per_page=-1\' );
while (have_posts()) : the_post(); ?>
     <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>
<?php endwhile;?>

SO网友:Tom J Nowell

调用第二个查询,使用query_posts (避免query_posts ), 而是在上使用此筛选器pre_get_posts 而是:

function wpse_show_all_authors($query){
    // if it\'s an author query
    if($query->is_author()){
        // put all the posts on page 1
        $query->set(\'posts_per_page\',-1);
    }
    return $query;
}
add_filter(\'pre_get_posts\',\'wpse_show_all_authors\');
将其放入函数中。php和它将在您拥有的任何和所有作者模板上发挥其魔力,而无需修改作者。php或执行2个DB查询,而不是1个。

结束

相关推荐

如何将博客文章的URL前缀设置为mysite.com/blog/%postname%/,同时允许作者仍然位于mysite.com/Authors/%Nicename%?

我尝试了很多方法,但都找不到有效的解决方案。我希望我的网站具有以下结构:mysite.com/ = homepage mysite.com/blogs/ = blog archive mysite.com/blogs/year/ = blog archive (in a specific year) mysite.com/blogs/year/month/ = blog archive (in a specific month) mysite.com/blogs/year/