给博客添加几个小功能

学习折腾
377 22

老何又在折腾博客啦。

作为一名代码盲(大约相当于读了1年书的文盲),还老喜欢折腾博客,好在有强大的搜索引擎,能基本实现自己需要的功能,感谢这些分享的朋友,老何把这两个方法放在一起,算是搬运与整合吧。

添加字数统计与阅读时间提示

这个功能也是在@Fooleap博客上看到的,怕人家烦,不好意思问,囧。

搜索的过程令人抓狂,一时不知道用什么关键词好,思路很简单;先统计文章字数,然后除以350(一般阅读速度),开始找到了统计字数的方法,却不知道怎么计算,对照教程怎么也弄不过来,索性另寻出路。

实现的方法比较特别,字数统计与阅读时间计算是用不同的方法计算字数的,比较搞笑。

1、统计文章字数:

不用函数,直接在需要显示的字数的地方加上以下代码[1]即可:

本文共<?php echo (string)mb_strlen(str_replace(PHP_EOL,'',strip_tags($this->content)),'utf-8'); ?>字

2、估计阅读文字需要的时间[2]。在foot.php文件中插入如下代码

    <script type="text/javascript">  
    $(document).ready(function() {   
    var read_time=$('#content').text().length; //获取文章内容并计算字数   
    var read_time=read_time/400; //计算阅读时间   
    var read_time=Math.round(read_time); //四舍五入   
    if(read_time>1){   
    $('#read-time').html('预计阅读时间:'+read_time+'分钟');   
    }   
    else{   
    $('#read-time').html('预计阅读时间:1分钟');   
    }   
    })   
    </script>

然后在需要的地方调用<span id="read-time"></span>即可。这里需要注意的的是我特意给文章加了一个容器div id#content

效果见本文,不知道这两者统计出来的字数是不是一样的,有没有更好的方法实现?

参考资料

评论 ( 22 )
隐私评论
  1. 2019-05-02浙江省杭州市回复
    我的博客一直用的是 hexo next 主题,太折腾,过于花里胡哨了,最近也计划返璞归真 哈哈
    1. 2019-05-05安徽省安庆市回复
      @宇宙湾
      最简单的就是最耐看的。
  2. 2017-11-13香港回复
    这些功能都用上了,没想到Typecho实现此功能比起Wodpress轻松更多,谢谢分享。
    1. 2017-11-13安徽省安庆市回复
      @皮皮
      几行代码完成,确实很简单。有些wp主题集成了此项功能。
      1. 2017-11-13香港回复
        @Mr.He
        不过我在自己的网站试过无论多少字的文章都只显示一分钟,看来要花点时间研究了。
        1. 2017-11-14安徽省回复
          @皮皮
          你把代码里的#content改成.post-content就能正常显示了。
          1. 2017-11-14香港回复
            @Mr.He
            真的可以了,没注意到主题的参数。感谢!
            1. 2017-11-14安徽省回复
              @皮皮
              不客气,欢迎常来。
  3. 2017-11-13河南省南阳市回复
    呵呵,不错,多谢分享!有空可以研究一下下!
    1. 2017-11-13安徽省回复
      @明月登楼学习笔记
      这个小功能挺有个性的。
  4. 2017-11-01塔吉克斯坦回复
    两个功能可以一起用php搞定啊,根本不需要js,php的两个函数,一个统计字数,一个取整除法。
    1. 2017-11-01安徽省安庆市回复
      @山野愚人居
      尝试过,失败了~~
  5. 2017-10-28河北省石家庄市回复
    写的很好,之前在hexo博客看到过,这次在博主网站看到真是受教了。
    1. 2017-10-29安徽省回复
      @devoted
      看起来逼格高一点,其实也没什么卵用
  6. 2017-10-25广东省广州市回复
    但是不会记录cookies
    1. 2017-10-25安徽省回复
      @灰狼
      这个评论框是套用过来的,不记录cookies.也不会弄。
  7. 2017-10-18广东省汕头市回复
    老何你需要学习一点 PHP,就用不着分开算了。
    PS:不烦,倒是博客程序不同,我也不清楚 Typecho 的应该怎么写。
    1. 2017-10-18安徽省回复
      @fooleap
      年龄大了,接收新知识能力退步不少
  8. 2017-10-17江西省赣州市回复
    不折腾不舒服
    1. 2017-10-18安徽省回复
      @小萝博客
      能折腾,尽量折腾
  9. 2017-10-17广东省肇庆市回复
    这是折腾的乐趣,哈哈。
    1. 2017-10-18安徽省回复
      @老杨
      小功能,大乐趣。