typecho网站添加博主认证及等级

这个功能其实非常简单,通过判断评论者的邮箱及评论条数,输出对应的文字或图片。

老规矩直接上代码。在主题模板的functions.php文件里添加以下代码。

  1. /** 评论者认证等级 */
  2. function dengji($i){
  3. $db=Typecho_Db::get();
  4. $mail=$db->fetchAll($db->select(array('COUNT(cid)'=>'rbq'))->from('table.comments')->where('mail = ?', $i)->where('authorId = ?','0'));
  5. foreach ($mail as $sl){
  6. $rbq=$sl['rbq'];}
  7. if($rbq<1){
  8. echo '博主';
  9. }elseif ($rbq<10 && $rbq>0) {
  10. echo 'VIP1';
  11. }elseif ($rbq<20 && $rbq>=10) {
  12. echo 'VIP2';
  13. }elseif ($rbq<40 && $rbq>=20) {
  14. echo 'VIP3';
  15. }elseif ($rbq<80 && $rbq>=40) {
  16. echo 'VIP4';
  17. }elseif ($rbq<100 && $rbq>=80) {
  18. echo 'VIP5';
  19. }elseif ($rbq>=100) {
  20. echo 'SVIP';
  21. }
  22. }

em,再打开主题评论模板comments.php文件,在评论者名字输出位置后加上如下代码。

  1. <?php dengji($comments->mail);?>

然后,就大功告成啦。至于样式,可自行在上面的输出代码上加一个层,调整其CSS即可。

文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/80
2 条评论
5.1k

发表评论

已有 2 条评论

  1. goxyz     Win 10 /    Chrome
    2021-11-22 22:19

    大佬,具体加在comments文件哪个位置?一直没找到

    1. 【管理员】Vv     Win 10 /    Chrome
      2021-11-22 22:24

      @goxyz

      每个comments文件的结构都不一样,看你想放的位置了,我的是放昵称后面那里

!