给 WordPress 换上带 Gravatr头像的最新评论(代码版)

一直很不喜欢WP自带的最新评论,看了 WP Kit CN 里边带的最新评论也让我不是很满意。自己还找过几款其他的 Recnet Comment 类似的插件,都是不尽如意。这个修改方法还是在万戈那里看到的。最近从他那抄袭了不少好东西。大家没事去翻翻他博客吧。对折腾 WordPress 肯定有很大的帮助。

其实自己的要求很简单:
1. 不要太花哨
2. 要有 Gravatar 头像
3. 评论者名字
4. 点击留言直接进入相关文章页面

在万戈博客看到很简单的一段代码,连插件都省了,对 WordPress 提速有那么一点效果,不多说啦,看代码吧。

1
2
3
4
5
6
7
8
9
10
11
12
<?php
global $wpdb;
$sql = "SELECT DISTINCT ID, post_title, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved,comment_author_email, comment_type,comment_author_url, SUBSTRING(comment_content,1,25) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID = $wpdb->posts.ID) WHERE comment_approved = '1' AND comment_type = '' AND comment_author != '万戈' AND post_password = '' ORDER BY comment_date_gmt DESC LIMIT 10";
$comments = $wpdb->get_results($sql);
$output = $pre_HTML;
foreach ($comments as $comment) {
$output .= "\n<li>".get_avatar(get_comment_author_email('comment_author_email'), 18). " <a href="" . get_permalink($comment->ID) . "#comment-" . $comment->comment_ID . "" title="" . $comment->post_title . " 上的评论">". strip_tags($comment->comment_author) .": ". strip_tags($comment->com_excerpt) ."</a></li>";
}
$output .= $post_HTML;
$output = convert_smilies($output);
echo $output;
?>

另外升级3.0.1后的朋友可能会造成头像无法显示的问题,请移步:
WordPress 升级 3.0.1 后修改记录

另外补充说明一下:代码中的“万戈”换成各自的名字就行,只是为了隐藏博主的最新留言,还有 gravatar 头像缓存的路径就根据各自的实际情况啦。

相关评论

  1. 阿溪说道:

    呵呵!!!
    用上了!!

  2. 秋天一棵树说道:

    找这个功能找到这里来了,哈哈。
    发现一个小bug:文章中的代码实际上是不包括Gravatar头像缓存的,你可以看下老万的文章:
    http://wange.im/recent-comment-with-avatar-in-wordpress.html

  3. sky说道:

    不错,看到过了的

  4. 浩子说道:

    看到我的头像了
    ……

  5. 囧啊囧说道:

    我没有发现你博客评论有什么不好的啊!

  6. 笔头说道:

    看的不是很懂~~不过觉得Gravatr头像很不错的东西~

相关评论:

您的电子邮箱地址不会被公开。 必填项已用*标注