这个教程网上都转烂了,但是使用的都是图片显示等级,有一段时间追求极简,我就疯狂的压缩主题,能不用图片坚决不用,于是这个东西就诞生了,也没怎么在意,现在换到Typecho之后,更是不关注这东西了,但是今天@欧爹突然提起这个功能,想让我帮他折腾上,于是我就找到之前的主题,将代码拿出来,整理一下就发给他了。

终于有机会帮上欧爹了,我牟足了干劲,想办法满足欧爹的奇葩要求(考虑到他博客火爆程度,他嫌原本的7级不够用,于是稍微增加到了10级)

其实最烦人的就是选色,也还好,有了色阶选起来也不是特别难受,最终效果我感觉还是很不错的(详见上图) 技术含量很低,为了凑字数,打了那么多字,下面就上本篇文章的重点吧

下方代码放进functions.php内

//获取访客VIP样式
function get_author_class($comment_author_email,$user_id){
global $wpdb; $author_count = count($wpdb->get_results( "SELECT comment_ID as author_count FROM $wpdb->comments WHERE comment_author_email = '$comment_author_email' ")); 
/*如果不需要管理员显示VIP标签,就把下面一行的“//”去掉*/
//$adminEmail = get_option('admin_email');if($comment_author_email ==$adminEmail) return;
if($author_count>=5 && $author_count<10) echo '<a class="vip1" title="LV.1">LV.1</a>';
else if($author_count>=10 && $author_count<50) echo '<a class="vip2" title="LV.2">LV.2</a>';
else if($author_count>=50 && $author_count<150) echo '<a class="vip3" title="LV.3">LV.3</a>';
else if($author_count>=151 && $author_count<300) echo '<a class="vip4" title="LV.4">LV.4</a>';
else if($author_count>=301 &&$author_count<450) echo '<a class="vip5" title="LV.5">LV.5</a>';
else if($author_count>=451 && $author_count<550) echo '<a class="vip6" title="LV.6">LV.6</a>';
else if($author_count>=551 && $author_count<700) echo '<a class="vip7" title="LV.7">LV.7</a>'; 
else if($author_count>=701 && $author_count<850) echo '<a class="vip8" title="LV.8">LV.8</a>'; 
else if($author_count>=851 && $author_count<1050) echo '<a class="vip9" title="LV.9">LV.9</a>'; 
else if($author_count>=1200) echo '<a class="vip10" title="神一样的人物 V1000+">LV.10</a>'; }
//认证用户
function comment_links_title($email = ''){
$links=array( 
'1'=>'test@163.com', 
'2'=>'test@gmail.com', 
'3'=>'test@qq.com', );
//添加你想要设置个性图片的评论者Email,格式参考我写的
if(in_array($email,$links)) echo '<a class="vp" title="认证用户">认证</a>';
} 

将下方代码放进评论内容循环内需要显示的地方

<?php comment_links_title($comment->comment_author_email);//认证
if(user_can($comment->user_id, 1)){echo "<a title='本站博主' class='vip'>博主</a>";}; //博主
get_author_class($comment->comment_author_email,$comment->user_id);//等级?>

**下面是CSS,样式仅供参考**

/*评论者VIP显示功能的样式*/
.vp,.vip,.vip1,.vip2,.vip3,.vip4,.vip5,.vip6,.vip7,.vip8,.vip9,.vip10{overflow:hidden;padding:0 4px;color:#fff !important;margin:0 6px 0 0;} .vp:hover,.vip:hover,.vip1:hover,.vip2:hover,.vip3:hover,.vip4:hover,.vip5:hover,.vip6:hover,.vip7:hover,.vip8:hover,.vip9:hover,.vip10:hover{background:#aaa;}
.vp{background:#2ae;}
.vip{background:#90EE90;} 
.vip1{background:#C1FFC1;} 
.vip2{background:#98FB98;} 
.vip3{background:#7FFF00;} 
.vip4{background:#FFEC8B;} 
.vip5{background:#FFC125;} 
.vip6{background:#FFA500;} 
.vip7{background:#C6E2FF;} 
.vip8{background:#A4D3EE;} 
.vip9{background:#7EC0EE;} 
.vip10{background:#EE2C2C;}
至此,本篇文章结束

标签: WordPress, WordPress技巧, 等级, 评论

已有 68 条评论

  1. Typecho 折腾不了吧~

    1. 想折腾还是可以的,只不过没WP那么简单,TE折腾全靠自己,教程太少,都没办法扒别人的代码,因为基本上都差不多= =

  2. 你图片水印里的边框不和谐

    1. 不要在意那些小细节,没有什么好的思路,打算重新做水印

  3. c c

    有个建议,要是能单建一个作者表的话,单独记录每个作者数量,那样会更好些。
    select在没设置索引时遍历统计email效率不高,而且随着数据增多会越来越慢。

    1. 其實沒那麽多可想的,其一,玩wp的基本上都是一個人折騰,開放的博客不會用這個刺激評論。其二,wp博客的數據量並不是特別大,讀取起來不會有明顯速度上的拖累。
      不過你考慮的場景很多,但是這些場景只是很少用到,或者到了類似場景的博客,不會用這功能(>_<)

    2. 可以用缓存缓解数据库压力吧

      1. 你数据库有很大压力么

        1. 你的语文有问题,明明是楼上那个人,担心数据库。哥哥我用了静态化,毫无压力。

          1. 日!!!

  4. 突然發現代碼被吃了一些,臥槽啊,回頭補上

  5. Typecho 据说已经更新了

    1. 很早就更新了,用烦了WP,现在开始玩TE吧

  6. crll crll

    这个typecho 早有了。

    1. 我没查,我只是发WP版,没说TE没有啊= =

  7. 欢迎来到typecho的大家庭。

    1. 求大哥罩啊,哈哈

      1. 互相照应。

  8. JV JV

    Typecho速度就是快啊。

    1. 主机速度也很给力

  9. 满级再归零

  10. 这个真的有必要吗……

    1. 可以自慰,,,刺激评论玩的= =

  11. 能添加到多说么,要是能那就完美了

    1. 加到多说,你开玩笑- -

      1. 见到过,有大神把浏览器神马的加到多说,不过有点卡。。但是的确实现了

        1. 那就不值了= =

          1. 也就那样,不过加功能不行,咱精简样式还是行的吧,精简之后和自带的评论样式差不多的哦,

    2. 可以啊,多说有API,具体你去看多说的开发文档。而多说浏览器UA是利用JS插入的,你可以把它的JS扒走研究一下

      1. 但是等级显示涉及数据库操作。。。

        1. 用JS来判断显示应该可以,数据库的问题吧,多说的评论数貌似都从JS中获取,没用多说不太清楚-_-

  12. 不错不错!

    1. 你不觉得很屌么,。哈哈

  13. 麻烦你把评论者网址加上新窗口打开

    1. OK了,已经加上

  14. 这个以前找死都找不到,现在用多说了 倒出来了 纳闷死了

    1. 那就再切换回来呗

  15. 麻烦你加上支持ctrl+enter来提交评论

    1. 那个东西很重要么,囧,我从来没用过。。。

      1. 必须重要啊,每次输入完成后,还要点下鼠标去提交?多麻烦啊。直接输入完成后,键盘提交方便太多太多了

        1. 好啦,加上了,你可以开艹了,哈哈

  16. 要艹得开心,艹得爽

  17. 看着挺舒服的

  18. 试试评论功能,之前貌似无法成功提交哦

    1. 啊?无法提交?是一直卡在提交过程不刷新页面么?我也不知道怎么回事,偶尔会遇到这种情况。

    2. 啊?具体什么症状

      1. 小屁孩 我的新手站长站换样了 点昵称链接去看看吧 o(∩_∩)o

        1. bootstar太臃肿了,虽然是一个好框架
          你之前的那个主题呢?干嘛不用了,用多梦的干啥额。。。

      2. 我去 怎么一下发了五条?什么情况

        1. 难道你点了好几下提交评论。。。

  19. 换个邮箱那个等级就重头来过了。

    1. 换一个邮箱就等于新的人生

  20. 对了,忘问考怎么样了?
    考不好也不用桑心,蓝翔新东方啥的不都离你家挺近么~

    1. 日,你故意桑我心- -

  21. 很不错 值得一试 不过不想折腾了

    1. 那就不弄,这东西可有可无

  22. 好久没见你这个操蛋的站点了,我去,改版改得那么彻底,
    什么时候我也要改成typeche

    1. 额额,快来跟我一起艹TE

      1. 过阵子吧,现在工作有点忙,都没时间折腾,网站挂了都没办法理。

    2. 赶紧换,哈哈

  23. 前來支持一下~~看起來挺不錯的~~ :P
    PS:歡迎訪問AREFLY.COM~~ :D

  24. 设置评论等级了都~

  25. 原来是出自你手的。

  26. 冉

    已经添加 ,感觉有BUG, 发表完评论可以看到,刷新网页后就没有了

    1. idevise使用的是wp默认的评论函数,不支持添加这个功能

  27. 禅猫 禅猫

    比较郁闷,刚发现你这有几个非常棒的主题,。。结果一个都不能下载了。。预览看看都不行 :???: 哎 undefined

    1. 你关注是哪个主题呢?可以告诉我,我方便的话可以提供预览图

  28. 略懂 略懂

    哈哈

添加新评论