Hexo上NexT评论系统来回折腾后最终为什么采用Valine?

Valine有什么好?

凭着喜好折腾过Disqus和Livere,都让我非常的无奈,对Disqus而言它在墙外我在墙内,麻烦;对Livere而言中文名起的很好,然盛名之下其实难副,在此称其为某必力。

所以在下将目光投向了Valine,到头来发现选择它的理由竟无比的充分和必要:

  • 最诱惑我的是可以让阅读者匿名评论!
  • 呈现速度快,效率高,不像某必力那么不稳定,时不时明明登录了写完评论,一点发布,还让你登录,有愧于这“力”字。
  • 界面不像Disqus、某必力那么华丽,但优点就是简洁。
  • MarkDown 全语法支持。
  • 无后端实现。
  • Emoji 😉

其实前四点就已经足够打动我选择Valine啦。

官方对Valine的介绍:

Valine 诞生于2017年8月7日,是一款基于LeanCloud的快速、简洁且高效的无后端评论系统。 理论上支持但不限于静态博客,目前已有HexoJekyllTypechoHugoGhost 等博客程序在使用Valine。

至于集成和配置,因NexT(NexT.Gemini v5.1.4)已经默认集成了Valine,所以整个操作三个步骤就可搞定:注册LeanCloud获取appid和appkey,修改NexT主题配置,生成部署。

注册LeanCloud获取AppID和AppKey

  1. 注册

这里有一点需要提醒的是,为了避免很多认证最好采用LeanCloud国际版进行注册,觉得无所谓可以略过。

注册前可先参考Pricing页面,选择Developer(Free)进行注册。

  1. 创建应用生成appid和appkey

注册验证完成后,先创建应用,选择开发版同时选择“根据现有应用SCHEMA创建”。

创建成功后在LeanCloud Console中:进入设置-应用Key,可见生成的App IDApp Key

1
2
App ID: your leancloud application appid  #每个app有一个唯一ID,不可变更
App Key: your leancloud application appkey #适用于所有平台
  1. 关联Blog站点的域名

在LeanCloud Console中:进入设置-安全中心-Web安全域名,写入需要关联的域名,并保存。

修改NexT主题配置

取得App IDApp Key并关联Blog域名后,在NexT主题配置文件的Valine字段下,将enable改为true,在appidappkey后写入LeanCloud上获取的App IDApp KeyValine字段默认信息如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
# Valine.
# You can get your appid and appkey from https://leancloud.cn
# more info please open https://valine.js.org
valine:
enable: false
appid: # your leancloud application appid
appkey: # your leancloud application appkey
notify: false # mail notifier , https://github.com/xCss/Valine/wiki
verify: false # Verification code
placeholder: Just go go # comment box placeholder
avatar: mm # gravatar style
guest_info: nick,mail,link # custom comment header
pageSize: 10 # pagination size

Done

上面的工作完成之后,就可以生成和部署,搞定收工。

1
2
3
$ hexo clean
$ hexo g
$ hexo d

相关官方链接:
valine.js.org、Valine on GitHubLeanCloud国际版