0%

Hexo博客添加评论功能

为什么添加gitalk评论?

Next主题支持的评论有disqusdisqusjschangyangitalkliverevaline。前面两个都需要翻墙才可以使用;畅言需要注册;valine需要注册,并且绑定身份证号后才可以使用;livere是韩国的,注册页面没有国际化,看不懂。综合下来选了gitalk,gitalk是使用github上仓库的issue来存储用户的评论,非常方便。

如何给自己的博客添加gitalk评论呢?

参考gitalk官网gitalk的Demo来尝试在Next中接入gitalk。
1.首先需要选择一个公共的github仓库(已存在或创建一个新的github存储库)用于存储评论。
2.需要创建GitHub Application, 如果没有点击这里申请,Authorization callback URL填写当前博客的首页地址。

3.修改Next主题的_config.yml,开启gitalk评论。配置内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Gitalk
# For more information: https://gitalk.github.io, https://github.com/gitalk/gitalk
gitalk:
enable: true
github_id: DavidWanderer(从博客地址中获取:https://davidwanderer.github.io/Blog/,自己的依次类推)
id: location.pathname
repo: Blog(这里只需要最终的仓库名,不需要全路径,我把评论直接存储在自己的博客仓库里)
client_id: ce08****8271(此id从第2步申请结果中获取)
client_secret: 1d47***9a608(此secret从第二步申请结果中获取)
admin_user: DavidWanderer(此处需要和github_id保持一致)
distraction_free_mode: true # Facebook-like distraction free mode
# Gitalk's display language depends on user's browser or system environment
# If you want everyone visiting your site to see a uniform language, you can set a force language value
# Available values: en | es-ES | fr | ru | zh-CN | zh-TW
language: zh-CN

遇到的问题

1.博客的评论在使用之前需要登录配置的admin_user进行初始化评论,包括github授权等等操作,否则会出现如下问题。

2.博客的评论有时候会出现Network Error的问题,一般情况下,使用自己的Github账号登录一下,就不会出现问题了。但是如果问题还是没有消除,请检查Next配置文件中的Gitalk配置中的github_idadmin_userrepo填写的是否正确,可以结合Chrome的网页调试工具调试查看是否是认证失败,如果是认证失败,请检查Gitalk配置。
评论Network Error截图:

评论接入成功后的截图: