QQ爹の博客 QQ爹の博客

获取多说评论次数

in 实用技巧 read (1632) 文章转载请注明来源!

为什么使用多说评论系统
  因为想尽量减轻服务器压力,但也有人说多说加载慢。。个人感觉多说挺好用的,省去了好多麻烦。

多说的缺点
  也不知道Typecho有木有类似的插件,反正我没找,自己就做了,但还不是插件,只是写了一个function来调用多说的“获取文章评论数”公开API,并集成到Typecho,多说官方也有,但文档写的不清晰,糊里糊涂的(其实是我不怎么懂JS罢了,O(∩_∩)O~)

PHP获取评论数
  在当前主题文件夹下新建一个PHP文件,getDuoshuoComments.php,代码如下

 <?php function getDuoshuoComments($threads){
$url = 'http://api.duoshuo.com/threads/counts.json?short_name=xuyangjie&threads=' . $threads;
$jsonComm = file_get_contents($url);
$arrayComm = json_decode($jsonComm, TRUE);
$counts = $arrayComm['response'][$threads]['comments'];
if(!is_int($counts)){
return 0;
}
return $counts;
}

这里需要改的是short_name=xuyangjie,其中xuyangjie替换为你在多说创建二级域名。

  然后在需要显示评论数的地方添加<?php echo getDuoshuoComments($this->cid); ?>,就行了。当然你需要在显示评论数的文件添加include('getDuoshuoComments.php');,嫌麻烦的话,可以把getDuoshuoComments函数,写在header.php内。

举例:
如果想在post.php中显示评论次数,请先在post.php中加入include('getDuoshuoComments.php'),然后再需要显示的位置加入<?php echo getDuoshuoComments($this->cid); ?>

本文转自https://blog.xuyangjie.cn/toss/17.html

这个方法,我试了没什么问题,不过因为多说服务器有时很慢,加了这个会在慢一点,所以不是很建议使用

jrotty WeChat Pay

微信打赏

jrotty Alipay

支付宝打赏

文章二维码

扫描二维码,在手机上阅读!

多说代码
发表新评论
已有 10 条评论
  1. 拾叁同学
    拾叁同学Windows 10谷歌浏览器 回复

    问题好像出在include('getDuoshuoComments.php');,因为我把这行代码放到首页,所以访问首页的时候特别慢,连在首页刷新都慢,访问文章的速度很快。看来还是得用回原生评论框了,不过还是学习了!多谢博主(・∀・)

    1. Jrotty
      JrottyWindows 10谷歌浏览器 回复

      @拾叁同学 嗯!我虽然用多说!但是我不用这个来显示文章评论次数

  2. 拾叁同学
    拾叁同学Windows 10谷歌浏览器 回复

    ಥ_ಥ 把获取评论数的代码统统去掉网站的加载速度就回复了,真是好伤心

  3. 拾叁同学
    拾叁同学Windows 10谷歌浏览器 回复

    发现用了这个方法后进入文章速度很快,可是返回到首页或者打开首页的时候速度就有所延迟

  4. 拾叁同学
    拾叁同学Windows 10谷歌浏览器 回复

    真的太谢谢博主了,虽然也不知道博主修改了哪里。可是用了博主修改的这个的确可以显示了。可是博主,我还想请教一个问题。就是我原来的模板首页显示评论的那一块。他貌似会有一个判断,就是假如说没有评论的时候他不会说“0条评论”,他会显示说“没有评论”。请问该如何实现他这种效果呢?这是模板首页显示评论的代码

    1. Jrotty
      JrottyWindows 10谷歌浏览器 回复

      @拾叁同学 文章代码中有个0改下那个大概就可以了吧

  5. 拾叁同学
    拾叁同学Windows 10谷歌浏览器 回复

    然后在需要显示评论数的地方添加 cid); ?>,就行了。当然你需要在显示评论数的文件添加 include('getDuoshuoComments.php');这里有点看不懂,博主能详细说明一下吗?

    1. Jrotty
      JrottyWindows 10谷歌浏览器 回复

      @拾叁同学 文章中刚才发现个问题,重新改了下,并且举了个例子,你看下吧(/ω\)

  6. 拾叁同学
    拾叁同学Windows 10谷歌浏览器 回复

    请问博主 这个方法现在还能用么?有人在官方论坛上说不能了
    我的是1.0

    1. Jrotty
      JrottyWindows 10谷歌浏览器 回复

      @拾叁同学 能用的

前篇 后篇
雷姆
拉姆
音乐加载中...
0:00