3

我目前使用此代码段来检索最新 5 条(已批准)评论的列表:

<h2>Latest comments</h2>
<?php $comments = get_comments('status=approve&number=5'); ?>
<ul style="font-size:5px">
    <?php foreach ($comments as $comment) { ?>
        <li style="font-size:10px">
            <div style="float:left;margin-right:3px"><?php echo get_avatar( $comment, '35' ); ?></div>
            <em style="font-size:12px"><?php echo strip_tags($comment->comment_author); ?></em> (<a href="<?php echo get_option('home'); ?>/?p=<?php echo($comment->comment_post_ID); ?>/#comment-<?php echo($comment->comment_ID); ?>">link</a>)<br>
            <?php echo wp_html_excerpt( $comment->comment_content, 35 ); ?>...
        </li>
    <?php }  ?>
</ul>

它有效,问题是这条线真的很脏:

<a href="<?php echo get_option('home'); ?>/?p=<?php echo($comment->comment_post_ID); ?>/#comment-<?php echo($comment->comment_ID); ?>">link</a>

我使用/year/month/day/永久链接结构,并且通过上面的行,我得到了一个额外的重定向?p=POST_ID。我很确定有更好的方法来获得评论永久链接..

你能帮助我吗?:)

4

1 回答 1

5

您可以使用get_comment_link() 函数。如果您传入评论的 ID,它将生成链接到评论的 http url。

前任:

get_comment_link($comment->comment_ID);

如果 $comment 是一个 WP 评论对象,您应该能够传递它而不是 ID,它会保存对该对象的查找。

于 2013-07-30T01:13:37.883 回答