之前使用hexo的时候,评论功能使用的是韩国的LiveRe.使用简单,但缺点是加载慢,后台访问不稳定。 趁这次迁移到hugo,正好换了评论功能,市场上评论系统还是挺多的,disqus,畅言,来必力,gitment,gitalk

相比同类的工具 gitment、gitalk 以及 disqus 都是基于github的评论工具来说,优点如下:

权限少,仅限指定读写特定仓库,仅需要给 utterances 授权一次,其他凡是使用 utterances 的. 站点都不必再 额外授权 ,直接就可以评论
极其轻量
加载非常快
配置比较简单

这里选用了utterances,他的实现建立一个放评论的repo,是把每一篇文章都有一个 issue,每个人的评论放在里面。

一.安装配置utterances

安装配置只需要五步

hugo even主题添加评论系统

1.在Github上创建 Eric0720/hugo-comment 仓库

2.在Github上安装 utterances app

3.选择 repo: Eric0720/hugo-comment

4.在config.toml添加配置:

1
2
3
4
5
6
[params.utteranc]
enable = true
repo = "scue/hugo-blogs-utterances"
issueTerm = "pathname"
theme = "github-light"

5.然后在需要评论的地方加入以下配置,这里我全局添加

打开 themes/even/layouts/partials 文档夹,我们可以看到很多 html 模板,我们需要改动的是 comments.html,

文档内容的结构是非常清楚的,我们可以在 gitalk 下面加一个 utterances 的控制结构:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
{{- if .Site.Params.utter.repo -}}
    <div id="utter-container"></div>
    <script src="https://utteranc.es/client.js"
        repo= '{{ .Site.Params.utter.repo }}'
        issue-term= "{{ .Site.Params.utter.issueTerm }}"
        theme= '{{ .Site.Params.utter.theme }}'
        crossorigin= "anonymous"
        async>
    </script> 
  {{- end }}
 

这样,我们就完成了 utterances 的配置。

参考