Author Link Not Displaying

时间:2013-03-04 作者:Kirsty Marks

我用“echo”作为它的外部循环,我相信这篇文章的作者将其作为一个链接,但是它没有显示为链接?

<h2 class="sidebarheaders">Random Posts By You </h2>
<br/>
<?php
$args = array( \'numberposts\' => 5, \'orderby\' => \'date\' );
$rand_posts = get_posts( $args );
foreach( $rand_posts as $post ) : ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
Written by: 
<?php echo the_author_link(); ?>
<?php endforeach; ?>
有人能提供建议吗?

1 个回复
最合适的回答,由SO网友:Eugene Manuilov 整理而成

你必须使用setup_postdata 如果要使用the_author_link 使用自定义循环。这样做:

<h2 class="sidebarheaders">Random Posts By You </h2>
<br/>
<?php
$rand_posts = get_posts( array( \'numberposts\' => 5, \'orderby\' => \'date\' ) );
foreach( $rand_posts as $post ) : 
    setup_postdata( $post );

    ?><li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    Written by: <?php echo the_author_link(); 

endforeach;

wp_reset_postdata();
?>
别忘了打电话wp_reset_postdata 将$post全局还原到主查询中的当前post。

结束