本文同步于我的博客:https://zhoushuo.me/blog/2018/03/22/hexo-gitalk/javascript
以前体验过畅言、来必力、gitalk等评论插件,体验最好的就是gitalk了。我目前用的icalm
主题内置了 Disqus评论插件,用着还行,但在国内的加载速度那个惨啊... 因此决定仍是换回gitalk。css
Gitalk 是一个基于 Github Issue 和 Preact 开发的评论插件。使用 Github 账号登陆,界面干净整洁,最喜欢的一点是支持 MarkDown语法html
主要特性:java
Gitalk提供了两种方式:react
<link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css"> <script src="https://unpkg.com/gitalk/dist/gitalk.min.js"></script>
$ npm i --save gitalk
import 'gitalk/dist/gitalk.css' import Gitalk from 'gitalk'
Github上新建一个仓库,操做简单,这里就不废话了。git
Gitalk 须要一个 Github Application,点击这里申请。固然,也能够在用户头像下的setting下的Developer settings中new一个Application,而后填写相应的参数。github
完成后会生成相应的clientID
andclientSecret
。shell
找到icalm/layout/_partial/comment.ejs
文件,把这段代码粘进去。注意,不一样的主题方式不太同样。npm
<link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css"> <div id="gitalk-container"></div> <script src="https://unpkg.com/gitalk/dist/gitalk.min.js"></script> <script type="text/javascript"> var gitalk = new Gitalk({ clientID: '<%= theme.gitalk.clientID %>', clientSecret: '<%= theme.gitalk.clientSecret %>', id: window.location.pathname, repo: '<%= theme.gitalk.repo %>', owner: '<%= theme.gitalk.owner %>', admin: '<%= theme.gitalk.admin %>' }) gitalk.render('gitalk-container') </script>
修改主题配置文件icalm/_config.yml
中增长如下内容。hexo
#gitalk settings gitalk: enable: true #用来作启用判断能够不用 owner: #Github 用户名, repo: #储存评论issue的github仓库名 admin: #Github 用户名, clientID: #`Github Application clientID` clientSecret: #`Github Application clientSecret`
在../post.ejs
文件末尾添加 :(post.ejs
是个人文章模板,你们根据本身的需求添加就行)
{% elseif theme.gitalk.enable %} <%- partial('_partial/comment') %> {% endif %}
到这里基本就大功告成了,不出意外的话,当你点击进入你的博客页面后就会出现评论框了。
当你用 github 账号登陆(管理员),而且第一次加载该会比较慢,由于第一次加载会自动在你 repo
的仓库下建立对应 issue。