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

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

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

/** 评论者认证等级 */
function dengji($i){
    $db=Typecho_Db::get();
    $mail=$db->fetchAll($db->select(array('COUNT(cid)'=>'rbq'))->from('table.comments')->where('mail = ?', $i)->where('authorId = ?','0'));
    foreach ($mail as $sl){
    $rbq=$sl['rbq'];}
    if($rbq<1){
    echo '博主';
    }elseif ($rbq<10 && $rbq>0) {
    echo 'VIP1';
    }elseif ($rbq<20 && $rbq>=10) {
    echo 'VIP2';
    }elseif ($rbq<40 && $rbq>=20) {
    echo 'VIP3';
    }elseif ($rbq<80 && $rbq>=40) {
    echo 'VIP4';
    }elseif ($rbq<100 && $rbq>=80) {
    echo 'VIP5';
    }elseif ($rbq>=100) {
    echo 'SVIP';
    }
}

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

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

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

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

发表评论

已有 2 条评论

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

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

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

      @goxyz

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

!