Wordpress作者功能瀑布页面

时间:2014-10-12 21:26:20

标签: php html wordpress

我正在为我的网站制作一个自定义博客卷,但是在我的生活中无法弄清楚如何打印出作者。以下是我到目前为止的情况:

<div id="blog_roll">
<?
  $args = array('tag__not_in' => '5');
  $posts = get_posts($args);
  foreach($posts as $post) {
?>
    <div class="waterfall"> 
        <div id="waterfall_thumb">
            <a href="<?php the_permalink(); ?>">
                <?php the_post_thumbnail(); ?>
            </a>
        </div>
        <div id="waterfall_title">
            <a href="<?php the_permalink(); ?>">
                <?php the_title(); ?>
            </a>
        </div>
        <div id="waterfall_author">
            by:<?php the_author();?>on <?php the_time( get_option( 'date_format' ) ); ?>
        </div>  
        <div id="waterfall_exc">
            <?php echo apply_filters( 'the_content', $post->post_excerpt ); ?></div>    
        </div>
    <? } ?>

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:0)

the_author()功能仅适用于The Loop™。要在循环外获取作者的详细信息,您可以从$post对象中获取作者的ID,并将其与the_author_meta()函数一起使用:

… by: <?php the_author_meta('display_name', $post->post_author); ?> …

有关其他可用字段,请参阅function reference in the WordPress Codex

顺便说一下,the_permalink也只能在循环内部工作。你需要使用

<?php echo get_permalink($post->ID); ?>

答案 1 :(得分:0)

我在我的wordpress博客上使用它

$user_url = get_the_author_meta('user_url', $post->post_author);
$user_name = get_the_author_meta('user_nicename', $post->post_author);
echo '<a href="' . $user_url . '" rel="author">' . ' by ' . $user_name . '</a>';

正如其他用户所提到的,the_author仅在循环内可用,因此您需要使用the_author_metadata(http://codex.wordpress.org/Function_Reference/the_author_meta