修复Hcms主题的评论Gravatar实时显示

网络博客 郑永 4099℃ 4评论

用这个hcms主题已经有一段时间,感觉很好,没有想换的念头,及时想换,跟现在这个主题比一下,还是觉得hcms好,可以肯定这主题在我的修改和优化下,已经非常适合我了,真的不会喜新厌旧了!以往那种想找新鲜感的念头再也没有了。

不过前几天发现这款主题的评论实时gravatar显示异常,根本没有效果,于是自己动手修复了一下,效果请发表评论测试,以下是修复过程。

第一步:在主题的functions.php里添加如下代码:

add_filter(‘comment_form_top’, ‘show_gravatar’);
function show_gravatar() {
global $current_user;
get_currentuserinfo();
echo get_avatar( $current_user->user_email , 40 );  // 40是指头像的尺寸,第4步也一样
}

第二部:在主题的css文件里找到#real-avatar .avatar{float:right;padding:2px;border:1px solid #ddd;background: #fff;margin-right:20px;_margin-right:10px;}上面一行添加:

#real-avatar { position: relative }

第三步:把http://pajhome.org.uk/crypt/md5/2.2/md5-min.js文件下载到主题的js目录,并且重命名为:gss.js。

第四步:编辑gss.js文件,在最后添加如下代码:

if (document.getElementById(“email”)) {
document.getElementById(“email”).onblur = function () {
if (/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(this.value)) document.getElementById(“real-avatar”).getElementsByTagName(“img”)[0].src = “http://www.gravatar.com/avatar/” + hex_md5(this.value) + “?d=mm&s=40”;
};
};

第五步: 在主题的footer.php里添加如下代码:

<?php if ( is_singular() && comments_open() ) { ?> //判断是不是单独的post页面且评论打开
<script type=”text/javascript” src=”<?php bloginfo(‘template_url’); ?>/js/gss.js”></script>
<?php } ?>

完毕,现在再试试,效果出来了吧,现在只要在评论处输入email,就可以实时显示gravatar头像了,效果如下:

xiufuhcmsgravatar

转载请注明:郑永博客 » 修复Hcms主题的评论Gravatar实时显示

历史上的今天:

(4)个小伙伴在吐槽
Loading...
  1. 分文博客2012-11-16 05:49 Google Chrome 23 Windows XP 回复

    额 好像鸟哥的主题本身就有。。。省事了

    沙发!
    • 郑永2012-11-16 12:17 Firefox 16 Windows XP 回复

      呵呵,其实也就简单几步。

  2. 分文博客2012-11-16 05:50 Google Chrome 23 Windows XP 回复

    最下角“//判断是不是单独的post页面且评论打开”亮了 怎么实现的 ?这样就让评论不是链接格式的了?

    板凳!
    • 郑永2012-11-16 12:17 Firefox 16 Windows XP 回复

      不知道你要问什么。。。

gravatar
发表我的评论
取消评论


Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址