Gitalk 是一个基于
Github Issue
的评论插件,使用Github
帐号登录,界面干净整洁,最喜欢的一点是支持MarkDown
语法,在个人博客里添加了之后就可以很简便的进行评论和回复了。
主要特性:
- 使用
Github
登录 - 支持多语言
[en, zh-CN, zh-TW, es-ES, fr]
- 支持个人或组织
- 无干扰模式(设置
distractionFreeMode
为true
开启) - 快捷键提交评论 (
cmd
|ctrl + enter
) - 支持
MarkDown
语法
界面效果:
安装
我这边使用的 Next 主题,版本是 5.1.3
。
1. 创建 Github 仓库
需要在自己的 Github
账号下创建一个仓库来存放评论,创建的仓库只要 public
就行,其余没要求。
2. 创建 Github Application
需要创建一个 Github Application
用来授权登录,如果没有 点击这里申请,Authorization callback URL
填写你主页地址,比如我的就是 https://karise.cn
,其他都随意填。
3. 为 Next 主题添加 Gitalk 支持
首先创建
Gitalk
的swig
文件,放在themes/next/layout/_third-party/comments
文件夹下,命名为gitalk.swig
,内容如下。{% if page.comments && theme.gitalk.enable %}
<link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css">
<script src="https://unpkg.com/gitalk/dist/gitalk.min.js"></script>
<div id="gitalk-container"></div>
<script type="text/javascript">
var gitalk = new Gitalk({
id: location.pathname,
})
gitalk.render('gitalk-container')
</script>
{% endif %}在主题文件
themes/next/layout/_third-party/comments/index.swig
中引入刚刚添加的文件。{% include 'gitalk.swig' %}
在
themes/next/layout/_partials/comments.swig
文件末找到最后的{% endif %}
语句,替换为如下代码。{% elseif theme.gitalk.enable %}
<div id="gitalk-container"></div>
{% endif %}在
themes/next/_config.yml
文件中添加Gitalk
的配置。gitalk:
enable: true # 是否启用
owner: xxx # 用户名
repo: xxx # 存放评论的仓库名
clientID: xxx # Github Application 的 clientID
clientSecret: xxx # Github Application 的 clientSecret
admin: xxx # 用户名
distractionFreeMode: false # 评论时遮照效果的开关最后执行
hexo clean && hexo g && hexo d
重新发布博客即可。