Hexo添加字数统计、阅读时长

统计插件

配置

NexT 主题默认已经集成了文章【字数统计】、【阅读时长】统计功能,如果我们需要使用,只需要在主题配置文件 _config.yml 中打开 wordcount 统计功能即可。如下所示:

1
2
3
4
5
6
7
8
# Post wordcount display settings
# Dependencies: https://github.com/willin/hexo-wordcount
post_wordcount:
item_text: true
wordcount: true # 单篇 字数统计
min2read: true # 单篇 阅读时长
totalcount: false # 网站 字数统计
separated_meta: true

修改完成主题配置文件后,启动服务预览:

1
hexo server

访问 http://localhost:4000/ 链接,如果出现字数统计和阅读时长失效的情况,一般是因为没有安装 hexo-wordcount 插件,查看 Hexo 插件:

1
hexo --debug

安装

如果没有安装 hexo-wordcount 插件,先安装该插件:

1
npm i --save hexo-wordcount

Node 版本 7.6.0 之前,请安装 2.x 版本 (Node.js v7.6.0 and previous) ,安装命令如下:

1
npm install hexo-wordcount@2 --save

安装完成后,重新执行启动服务预览就可以了。

显示文字

用 Sublime Text 工具打开 post.swig 文件,路径如下:xxx_blog/themes/next/layout/_macro/post.swig

修改【字数统计】,找到如下代码:

1
2
3
<span title="{{ __('post.wordcount') }}">
{{ wordcount(post.content) }}
</span>

添加 “字” 到 wordcount 后面,修改后为:

1
2
3
<span title="{{ __('post.wordcount') }}">
{{ wordcount(post.content) }} 字
</span>

同理,我们修改【阅读时长】,修改后如下:

1
2
3
<span title="{{ __('post.min2read') }}">
{{ min2read(post.content) }} 分钟
</span>

修改完成后,重新执行启动服务预览就可以了。修改后,效果如下图所示:
image.png

备注: 不蒜子页面PV统计插件,因为七牛云到期,人家耍赖不给他续域名,导致JS文件地址更换没更换为:

1
2
<script async src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
<span id="busuanzi_container_site_pv">本站总访问量<span id="busuanzi_value_site_pv"></span>次</span>