Next主题新增评论系统

一个优秀的博客应当允许读者能够自由的抒发自己的意见

1. 评论系统选择

在此之前我使用的评论系统为Valine,重新配置博客以后,发现Valine评论系统被从Next主题配置中移除,移除原因见Next V8.1.0移除Valine ,且Valine的代码已经停更,因此笔者不得不寻求新的评论系统

目前Next支持的评论系统有很多,Disqus, DisqusJS, Changyan, LiveRe, gitalk, Utterances等等,包括已经移除的Valine也是可以使用

其实最迎合笔者需求的就是Valine,轻量简洁,无需登录也可评价,其余的评论系统一般都是需要注册登录才可以回复,对于很多读者来说可能并没有那么多的耐心,找了半天发现一款Valine的替代品——Waline, 其实基本上和Valine差不多,一样的轻量简洁,支持不登陆评论

其实官方的配置教程已经非常的详细,见官方文档 ,本次的配置过程就简单写下

2. 前置条件

  • 1. 创建LeanCloud存储评论的数据库

    1. 注册LeanCloud国际版,网址为 https://console.leancloud.app/apps

      LeanCloud
    2. 创建应用(开发版),获取应用的AppIdAppKeyMasterKey即可

  • 2. Vercel部署评论系统服务端

    点击链接,跳转至Vercel进行服务端部署,按照官方文档操作,记住下面服务端的地址

    记住教程里说的,第一个评论用户为管理员,要记得注册一个用户

    vercel

3. 本地配置

  • 1.安装Waline插件 (插件网址)

    1
    npm install @waline/hexo-next
  • 2.修改_config.next.yml文件

    _config.next.yml文件末尾添加Waline配置项配置项的内容在插件网址中有介绍,即标红部分

    waline

    或者在waline插件安装完成后,在本地的README.md文件也可以看到

    waline2

我的配置项如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Waline Config File
# For more information:
# - https://waline.js.org
# - https://waline.js.org/reference/component.html
waline:
# New! Whether enable this plugin
enable: true

# Waline server address url, you should set this to your own link
serverURL: your server link
# Waline library CDN url, you can set this to your preferred CDN
# libUrl: https://unpkg.com/@waline/client@v2/dist/waline.js

# Waline CSS styles CDN url, you can set this to your preferred CDN
cssUrl: https://unpkg.com/@waline/client@v2/dist/waline.css

# Custom locales
locale:
placeholder: Welcome to comment # Comment box placeholder

# If false, comment count will only be displayed in post page, not in home page
commentCount: true

# Pageviews count, Note: You should not enable both `waline.pageview` and `leancloud_visitors`.
pageview: false

# Custom emoji
emoji:
- https://unpkg.com/@waline/emojis@1.0.1/weibo
# - https://unpkg.com/@waline/emojis@1.0.1/alus
# - https://unpkg.com/@waline/emojis@1.0.1/bilibili
# - https://unpkg.com/@waline/emojis@1.0.1/qq
# - https://unpkg.com/@waline/emojis@1.0.1/tieba
# - https://unpkg.com/@waline/emojis@1.0.1/tw-emoji

# Comment infomation, valid meta are nick, mail and link
meta: [nick, mail, link]
# - nick
# - mail
# - link

# Set required meta field, e.g.: [nick] | [nick, mail]
# requiredMeta:
# - nick

# Language, available values: en-US, zh-CN, zh-TW, pt-BR, ru-RU, jp-JP
lang: zh-CN

# Word limit, no limit when setting to 0
# wordLimit: 0

# Whether enable login, can choose from 'enable', 'disable' and 'force'
login: enable

# comment per page
pageSize: 10

参考链接:

  1. waline官方文档
  2. Next主题添加waline评论系统
  3. waline插件地址