添加 giscus 评论系统
如果博客系统需要和用户进行互动的话,可以添加评论系统。这里使用 Github Discussions,把评论放到博客系统的代码库统一管理。
Github 代码库上打开 Discussion 功能
打开博客系统代码库的 Github Discussions 功能。以管理员身份登陆,并进入代码库主页,点击 Setting。
在 Features 专栏下面,勾选 Discussions。
配置 giscus.app
进入 giscus.app 官网,有中文版。( https://giscus.app/zh-CN)下拉到“配置”处,可以看到有三个前置条件需要完成。
- Github Pages 博客系统必须是“公开的”,加评论一般博客都能正常打开了,这个没有问题。
- giscus app 是否已经安装。一般没有。在登陆博客代码库管理员的情况下,点击这个 giscus 的链接即可进入 Github Marketplace,点击 Install 的按钮进行安装。安装成功的话,可以看到以下页面。如果对安全要求比较高,可以选择 giscus.app 可以写入 Discussions thread 的具体代码库,当然,这里一般就是博客系统啦。
- Discussions 在前一步中已经打开。
至此,所有前置条件都已经完成。在仓库中,输入
接着往下,页面和 discussion 映射关系。默认是 pathname。如果和笔者一样希望使用中文作为文章的标题的话,建议选择
继续往下,Discussion 分类建议使用 Annoucements,理由已经很明显,还是保持尽可能的安全。毕竟谁也不想惹麻烦。特性和主题可以随意。
接着往下,可以看到 giscus 网站已经把相关的配置项都列出了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// 可以看到这样一个<script>标签
// 这里比较重要的部分,已经标注了
<script src="https://giscus.app/client.js"
data-repo="usingnow/usingnow.github.io"
data-repo-id="SomeStrings" //重要
data-category="Announcements" //重要
data-category-id="AnotherStrings" //重要
data-mapping="title" //重要
data-reactions-enabled="1"
data-emit-metadata="0"
data-input-position="top" //重要
data-theme="light"
data-lang="zh-CN" //重要
data-loading="lazy"
crossorigin="anonymous"
async>
</script>
在 Chirpy 中配置 giscus
在 Chirpy 中,并不需要直接将这个 js 代码块直接引入,而是通过在 _config.yml 中进行配置。可以发现并不是所有的配置项都已经包括,如果需要,可以增加去掉“data-” 的部分即可。注意,“active:” 这个配置项默认是空的,也就是不激活评论,必须填入 giscus。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
comments:
active: giscus # The global switch for posts comments, e.g., 'disqus'. Keep it empty means disable
# The active options are as follows:
disqus:
shortname: # fill with the Disqus shortname. › https://help.disqus.com/en/articles/1717111-what-s-a-shortname
# utterances settings › https://utteranc.es/
utterances:
repo: # <gh-username>/<repo>
issue_term: # < url | pathname | title | ...>
# Giscus options › https://giscus.app
giscus:
repo: usingnow/usingnow.github.io
repo_id: SomeStrings
category: Announcements
category_id: AnotherStrings
mapping: title
input_position: top
lang: zh-CN
全部完成保存后,直接推送即可。如果需要在本地起 jekyll s 的话,记得要重启服务器让配置文件加载生效。
在 Github Discussions 中管理评论
管理员和合作者可以在 Github Discussions 中管理评论。进入 Github 代码库,点击 Discussions。可以看到我们的每篇博客文章都被作为一个单独的 Discussion 列出(只有被评论过的会有,且按 title 来标明)。
点击进入某个 Dicussion。浏览到需要管理的评论,选择右上角的 ··· 就可以进行编辑、隐藏、删除等管理工作了。
如果想要锁定或者删除整个 Discussion。在右侧边栏的底部,可以看到如下菜单。
好啦,至此采用 giscus 的评论系统已经可以使用了。Enjoy~