给 hugo 博客添加评论功能
缘由
静态博客不像动态博客一样想要什么功能就写个代码实现,但是折腾一番还是可以满足日常需求的。本文主要讲述使用utterances
给静态博客实现评论功能。
了解 utterances
utterances
是一款基于 Github Issue 的 Github 工具,优点主要是无广告、加载快、配置简单,轻量开源!由于我没有使用过其他评论工具的经验,因此只讲述一下utterances
自身的优点,具体对比情况无法给出,但是看到有的博主表示之前使用disqus
,但是广告多,加载也比较慢,体验了一把utterances
后,马上切换到utterances
。相信utterances
足够让我使用很久了。
安装 utterances
由于utterances
是一款 Github App,因此安装utterances非常简单,只需要授权特定 repo 权限给utterances
就可以了,注意一个点:授权的这个 repo 必须是 public 的,可以选择多个 repo,但是建议选择一个就可以了,也比较安全。
给出我授权的 repo 作为参考,我是选择博客的 repo 作为utterances
评论的存放点(在博客评论的内容都会以 issue 的形式发布在 repo 下).
到目前为止utterances
就已经安装好了,接下来是需要在博客将评论的客户端显示出来。
配置 utterances 评论显示
可以配置在你希望显示评论的地方,这里给出一个简单的实现:配置在 footer.html 的顶部(显示在每篇文章的底部).
把具体的仓库改成自己授权给 utterances 的仓库即可。
这是当前最简单的方式,更优雅的方式是以配置文件的方式实现,例如:
html 中的配置模板
配置文件中的配置项:
这样的话需要修改仓库或者主题都可以很方便的修改一下配置文件就可以了,同时也可以选择不开启评论。
评论显示的主题有多种,具体可以在utterances官方查看,这里给出当前时间点的一个列表:
github-light
github-dark
github-dark-orange
icy-dark
dark-blue
photon-dark
preferred-color-scheme
boxy-light
映射到 issue 也有几种方式:
pathname
url
title
og:title
issue-number
specific-term
我选择的是 title 的方式,对应评论会以文章标题作为 issue 的标题创建在对应仓库下。
到目前为止,给 hugo 静态博客添加评论的功能已经做好了,不需要服务器就可以拥有评论功能,实用!
关注公众号:四颗咖啡豆,第一时间获取更新
版权声明: 本文为 InfoQ 作者【LanLiang】的原创文章。
原文链接:【http://xie.infoq.cn/article/67ce5d0ea8805df6150ec5173】。文章转载请联系作者。
评论