为博客添加评论区功能

前言

逛博客的时候看到了skk.moe的hexo博客里有评论区功能,我才意识到大佬们的能力有多强大 能够在静态博客里面像动态博客一样设置评论区,于是我就在网上找到了幽篁忆憬大佬在bilibili的教程

1
https://www.bilibili.com/opus/803994109467426834?spm_id_from=333.1391.0.0`

一、为什么要使用Waline?

很多网上给出的教程都是基于valine,gittalk搭建评论系统。gittalk不必说,利用GitHub的优势,便捷管理,缺点是评论需要登录等;而Valine的教程是最多的,但是Valine国际版自2022年8月左右就停止了国际版对大陆的服务,国内如需使用Valine进行评论,则需选择国内版(所以还需要备案)。而waline也有众多优点,不再赘述

二、为什么要写这篇教程?

因为互联网的变数太大了,加上个人博客搭建这方面的确不够大众化,这导致许多搭建过程十分零散,因版本而异,问题层出不穷,因此本人结合经验,综合诸位大佬的方案,完整走一遍流程,尽力把自己踩过的坑都说到

cut-off

具体步骤

1.数据库搭建

该步骤主要参照Waline官方文档: https://waline.js.org/guide/get-started/

进行对Leancloud国际版的配置以及Vercel的配置

需要注意,waline所需要的next版本是8.x版本,若是小于8.x版本而使用了,则可能会出现无法加载评论区的情况。因此请检查自己的next版本,若是小于8请进行升级

那么问题来了,很多人在使用next的时候,会发现GitHub有好几个next仓库,而且哪个看着都像是官方的,咋回事?这里引用一下团队成员的解释:

简单来说,问题就是 theme-next 团队的 owner 始终拒绝向其它任何团队成员提供足够的权限,且 owner 本人自 2019 年 10 月起已连续半年不在线,导致其它活跃的团队成员无法管理仓库,也无法邀请新的成员。 由于对 theme-next 团队的未来不抱有期望,我作为 theme-next 的主要贡献者,自 2020 年 4 月起停止为旧的仓库贡献代码,并创建了新的组织,以确保维护工作正常进行。 只要能够收到足够多的 Bugfix / Feature Request,每月更新肯定不是问题。 目前已经发布的版本在这里: https://github.com/next-theme/hexo-theme-next/releases v8.0.0 版本计划在 Hexo 5.0 版本后发布。

明白这些东西之后,进入gitbash,执行

1
npm install @waline/hexo-next

返回NexT主题文件夹,添加如下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
waline:
enable: true #是否开启
serverURL: xxxxxx # Waline #服务端地址,就是部署的 Vercel 地址
locale:
placeholder: 无需登录·请留下邮箱以接收回复·来说两句吧~ #评论框的默认文字
avatar: mm # 头像风格
meta: [nick,mail,link] # 自定义评论框上面的三个输入框的内容
pageSize: 10 # 评论数量多少时显示分页
lang: zh-cn # 语言, 可选值: en, zh-cn
visitor: true # 文章阅读统计
comment_count: true # 如果为 false , 评论数量只会在当前评论页面显示, 主页则不显示
requiredFields: [nick] # 设置用户评论时必填的信息,[nick,mail]: [nick] | [nick, mail]
libUrl: # Set custom library cdn url
login: enable
1

vercel链接即为如上