Fork me on GitHub

Hexo博客Next主题添加统计文章阅读量功能

概述

最近学的很无聊,就又想折腾一下我稚嫩的Blog,零零总总写了三十多篇文章,虽然都是辣鸡,但还是想做一个统计,能够在主页观察到每篇文章的阅读量,能直观看到哪怕一点点增量,那也能带来很大的满足感啊。于是Google了一下,在一个叫Doublemine的博客上发现原来Next主题支持一个叫LeanCloud的云服务商提供的统计功能,于是便做了一点微小的工作,达到了下面的效果。这篇教程在Doublemine的博客已经很详细,但是LeanCloud的UI进行了不小的更新,一些功能布局发生了变化,所以索性就根据新的UI再写一篇辣鸡博文。

Get LeanCloud服务

注册LeanCloud帐号

首先要注册一个帐号,访问LeanCloud官网,点击免费试用,或者访问控制台都会进入登录/注册页面,直接注册就好,也可以直接第三方账号登录,不过登录之后还是需要绑定邮箱和手机号。

配置LeanCloud端

有了帐号了,就是一名可以行使权力的正经用户了,那就开始配置Cloud,来为我们的Blog统计功能创建一个新应用吧。然后需要为统计阅读量创建一个表,然后得到应用的app-id与app-key,用来配置我们的Next实现统计功能。

  • 进入控制台,点击创建应用,这个test开发版是我已经创建的应用:

  • 就命名为test吧,然后选择开发版(免费哒),然后创建,就会像上一张图一样有一个test开发版的应用:

  • 点进test开发版,为统计阅读量单独创建一个Class,就是在数据库中建一个表,首先点击存储,然后创建Class,Next要求Class名称必须为Counter,所以命名一定要为Counter,为了防止阅读量统计不准确,建议ACL权限设置为无限制,然后点击创建Class。就会像我的数据库一样,除了一些带下划线_的表之外,还有一个Counter表:

设置网络安全

由于app-id和app-key是完全暴露的,所以防止他人使用,我们可以在应用设置里面面设置Web安全域名,只有添加的域名才能使用该应用,防止有人Hack我们的数据库。点击设置,安全中心,Web域名安全,添加Blog域名,点击保存就OK了。

配置博客端

配置_config.yml文件

首先需要得到LeanCloud应用的app-id与app-key,在控制台,设置,应用key中就可以找到:

然后配置就很简单了,只需要修改Next主题的配置文件_config.yml,该文件在blog/themes/next路径下,blog为你的博客文件夹,打开配置文件,找到LeanCloud配置项,修改为可用,添加对应app-id和app-key就行:

1
2
3
4
5
6
# Show number of visitors to each article.
# You can visit https://leancloud.cn get AppID and AppKey.
leancloud_visitors:
enable: true
app_id: # 你的app-id
app_key: # 你的app-key

然后使用命令hexo generate重新生成Blog,hexo deploy部署到Github就OK了,就可以达到本文第一张图的效果:

点击某篇文章之后,还可以在数据库中看到生成的数据记录:

伪造阅读量

如果想要达到装逼的目的,可以在数据库中更改上面那张图的time,即访问量,比如我将第二条记录改为10w:

就可以在Blog中看到效果:

当然,作为一个老实人,我当然还是实事求是地把它改回了1。

后续

感觉博客背景一片白不太好,截的图跟Markdown背景融为一体了,很影响阅读体验,准备下次搞一下背景。

BJTU-HXS wechat
海内存知己,天涯若比邻。