typecho获取当前作者的全部评论

2021-08-09 16:22:46 浏览数 (2)

函数是根据邮箱获取的评论,如果用户更改了邮箱,之前使用原邮箱的评论就不会显示。甚至会出现作者A修改成作者B的邮箱,输出作者B的评论。于是进入数据库查看,发现comments表里是有authorId字段的,也就是说是可以实现根据作者id输出评论的,这样的好处就是不用理会作者的邮箱。不会出现以上说出的缺点。实现起来也比较容易。

实现方法

代码语言:javascript复制
/*输出作者发表的评论*/
class Widget_Post_AuthorComment extends Widget_Abstract_Comments
{
    public function execute()
    {
        global $AuthorCommentId;//全局作者id
        $select  = $this->select()->limit($this->parameter->pageSize)
        ->where('table.comments.status = ?', 'approved')
        ->where('table.comments.authorId = ?', $AuthorCommentId)//获取作者id
        ->where('table.comments.type = ?', 'comment')
        ->order('table.comments.coid', Typecho_Db::SORT_DESC);//根据coid排序
        $this->db->fetchAll($select, array($this, 'push'));
    }
}

使用方法

代码语言:javascript复制
authorId;//获取作者id
?>
widget('Widget_Post_AuthorComment@index','pageSize=15')->to($AuthorComment); ?>
next()): ?>
//这里是代码
excerpt(50, '...'); ?>

0 人点赞