menu MineCraft爱好者
Typecho获取当前作者的所有文章数和评论数
search more_vert
MineCraft爱好者
MineCraft-我的世界热爱者是我的世界服主资源分享交流站为MC服主提供最新最全的游戏资料Bukkit插件Sponge插件服务端整合包等打造国内最大的Minecraft插件基地和精品资源分享平台
Typecho获取当前作者的所有文章数和评论数

QQ截图20200325184611.png

functions.php中加入如下函数

//当前作者文章数
function allpostnum($id){
$db = Typecho_Db::get();
$postnum=$db->fetchRow($db->select(array('COUNT(authorId)'=>'allpostnum'))->from ('table.contents')->where ('table.contents.authorId=?',$id)->where('table.contents.type=?', 'post'));
$postnum = $postnum['allpostnum'];
return $postnum;
}

//当前作者评论数
function allcommentsnum($name){
$db = Typecho_Db::get();

$commentnum=$db->fetchRow($db->select(array('COUNT(author)'=>'allcommentsnum'))->from ('table.comments')->where ('table.comments.author=?',$name));
//print_r($commentnum);
$commentnum = $commentnum['allcommentsnum'];
return $commentnum;
}

//print_r($commentnum); 取消注释可调试显示结果

显示当前作者文章、评论总数量调用代码如下(适用于post.php,author.php,或者index.phpwhile循环中等等)

当前作者文章数

<?php echo allpostnum($this->author->uid); ?>

当前作者评论数

<?php echo allcommentsnum($this->author->name); ?>

显示特定作者文章总数量调用代码如下(适用于任意模板文件)

<?php echo allpostnum(1); ?>

数字1改成对应作者的uid即可

显示特定作者评论总数量调用代码如下(适用于任意模板文件)

<?php echo allcommentsnum('Erhecy'); ?>

数字Erhecy改成对应作者的id即可

如果显示特定作者评论数请务必把''加上否则将会报错

代码解析

$db = Typecho_Db::get();
//获取数据库
$postnum=$db->fetchRow($db->select(array('COUNT(authorId)'=>'allpostnum'))->from ('table.contents')->where ('table.contents.authorId=?',$id)->where('table.contents.type=?', 'post'));
//按条件查询数据,将符合结果的条数生成一个数组
//print_r($postnum);取消注释可调试显示结果
$postnum = $postnum['allpostnum'];
//获取作者文章总数量
return $postnum;
//返回作者文章总数量,用return能够更加方便的处理事情

看到泽泽站长的https://qqdie.com/archives/typecho-author-allpostsnum.html 获取作者文章后就试了试能不能获取评论数,然后稍微改了下就成功了

评论

5条评论

    泽泽
    泽泽 访客
    2020-03-28 16:13

    哇你的表情图好大

      Erhecy
      Erhecy 作者
      2020-03-28 16:22
      @泽泽

      哇你的表情图好大:@(献花)

      马上修复 ヾ(≧∇≦*)ゝ

        泽泽
        泽泽 访客
        2020-03-28 17:04
        @Erhecy

        马上修复 ヾ(≧∇≦*)ゝ

        大大的其实也挺好看的

          Erhecy
          Erhecy 作者
          2020-03-28 17:08
          @泽泽

          大大的其实也挺好看的:@(傻笑)

          这样啊~那就不搞了233

      Erhecy
      Erhecy 作者
      2020-03-28 16:14
      @泽泽

      哇你的表情图好大:@(献花)

      啊!!!,是泽泽爱了爱了