我有每个作者的作者页面,如果我点击他们的昵称,我想看到他们的所有评论(或他们最近的所有评论)。我该怎么做?我尝试了下面的代码,但没有显示每个用户的唯一注释。。。它只输出所有人最近的评论,但我不希望这样。
<?php
$author_email = get_the_author_meta( \'user_email\' );
$args = array(
\'author_email\' => $author_email,
\'number\' => \'10\'
);
$comments = get_comments($args);
foreach($comments as $comment) :
echo(\'<li class="comment">\' . $somment->comment_content),\'<h5><a href=\'.get_permalink($comment->comment_post_ID).\'>\', get_the_title($comment->comment_post_ID), \'</a></h5>\', \'<time><em>\' . $comment->get_comment_date . \'</em></time>\', \'</li>\';
endforeach;
?>
</ul></div>
最合适的回答,由SO网友:Andy 整理而成
您的问题是使用author_email
, 你需要user_id
:
我只是使用类似的脚本。
<?php
$args = array(
\'user_id\' => get_the_author_meta(\'ID\'),
\'number\' => 10, // how many comments to retrieve
\'status\' => \'approve\'
);
$comments = get_comments( $args );
if ( $comments )
{
$output.= "<ul>\\n";
foreach ( $comments as $c )
{
$output.= \'<li>\';
$output.= \'<a href="\'.get_comment_link( $c->comment_ID ).\'">\';
$output.= get_the_title($c->comment_post_ID);
$output.= \'</a>, Posted on: \'. mysql2date(\'m/d/Y\', $c->comment_date, $translate);
$output.= "</li>\\n";
}
$output.= \'</ul>\';
echo $output;
} else { echo "No comments made";}
?>