当前位置:首页 » 好文分享 » 详情

    Emlog判断博主/作者评论并设置特定标识

    emlog的评论列表里没有对评论者进行区分,比如博主,作者,普通游客,至于用户就不必要了,把他放在游客里即可

    我们需要的是区分当前文章的作者,以及博客主人的评论。

    以下是博主笑忘书折腾出来的判断方法,其实原理比较简单,直接判断昵称是否和作者或博主相同即可。

    1. 首先需要获取文章作者id到评论列表函数里。打开 echo_log.php,找到评论获取函数:
    <?php blog_comments($comments); ?>

    如果不是官方模板,可能不一定完全相同,不过没关系,我们只是在其后面加入一个文章作者id:
    <?php blog_comments($comments,$author); ?>

    保存即可。

    2.继续打开module.php文件,找到评论列表函数,加进一个$uid,如下:
    <?php
    //blog:评论列表
    function blog_comments($comments,$uid)
    …………

    再找到:
    $comment['poster'] = $comment['url'] ? ……

    由于上面这句会将评论者昵称重新定义成带链接等的内容,不适合我们拿来判断昵称是否一致,所以我们要在其前面加入:
    $comname = $comment['poster'];

    这个获取的是评论者昵称文本。接着可以找到 <?php echo $comment['poster']; ?> 即评论者昵称显示位置,在其后面加:
    <?php global $CACHE;$user_cache = $CACHE->readCache('user'); $bzname = $user_cache[1]['name']; if($comname == $bzname): ?>(博主)<?php elseif($comname == $user_cache[$uid]['name']): ?>(作者)<?php endif;?>

    这个是先判断是不是博主的昵称,如果是就显示博主;不是的话,再判断是不是作者(不是博主发表的文章)。

    当然你也可以定义其他内容样式,自己发挥好了。

    慢着,我们只是完成了一级评论而已,后面的子评论还没设置。

    3.继续找到评论列表函数最后的,同样增加一个$uid:
    <?php blog_comments_children($comments, $comment['children'],$uid); ?>

    再找到子评论列表函数(一般在评论列表函数后面),重复第二步的操作即可。


    感谢作者:笑忘书的投稿,欢迎大家投稿: https://www.blogs.hk/post-87.html

    打赏
    X
    打赏方式:
    • 支付宝
    • 微信
    • QQ红包

    打开支付宝扫一扫
    日期:2015年08月17日 06:09:49 星期日   分类:好文分享   浏览(71303)   评论(20)
    本文地址:https://www.blogs.hk/post-571.html   [百度已收录]
    声明:本页信息由网友自行发布或来源于网络,真实性、合法性由发布人负责,请仔细甄别!本站只为传递信息,我们不做任何双方证明,也不承担任何法律责任。文章内容若侵犯你的权益,请联系本站删除!
    版权所有:《博客之家
    文章标题:《Emlog判断博主/作者评论并设置特定标识
    除非注明,文章均为 《博客之家》 原创
    转载请注明本文短网址:https://www.blogs.hk/post-571.html  [生成短网址]

    留言咨询

    自动获取QQ

    昵称

    邮箱

    网址

        站点统计

        • 收录网址:3370 个
        • 发布文章:3008 条
        • 在线人数:1人
        • 总访问量:270549445次
        • 本站运行:12年5月3天
        Copyright © 2025 博客之家 版权所有  
        關於本站免責聲明sitemap新站登錄