主题优化-添加评论系统和内置搜索
目录
添加评论系统
启用评论系统utterances
-
在hugo的配置文件(config.toml)中启用utterances,打开config.toml,添加如下:
1 2 3 4 5 6 7 8 9
# Utterances comment 评论系统设置 (https://utteranc.es/) [params.page.comment.utterances] enable = true # owner/repo repo = "YourUsername/YourUsername.github.io" ##自己的github仓库地址 issueTerm = "pathname" label = "" lightTheme = "github-light" darkTheme = "github-dark"
repo的格式为:github用户名/创建的仓库名
github上安装 utterances
- 首先必须在 github 上进行安装 utterances,访问 utterances应用程序 然后点击 Install 按钮进行安装。
- 在这里可以选择可以关联的存储库,可以选择我们所拥有的库(也包括未来建立的库)或者某一个仓库,这里只选择某一个需要进行评论的库,这样比较好。
- 安装完成即可,随后访问 utterances应用程序 就不再是安装而是是执行配置项目。
- 此时服务端配置已经完成,接着访问博客测试下评论。
内置搜索系统
- 原理:在执行push操作触发Actions编译站点代码到./public目录后,再执行生成索引文件操作,生成index.json到./public目录,并自动上传文章索引至algolia上,以实现站内搜索功能。
algolia实现内置搜索
-
前往官方网站https://www.algolia.com/ 使用 GitHub 或 Google 帐号登录。登录完成后根据提示信息填写一些基本的信息即可,注册完成后前往 Dashboard,我们可以发现 Algolia 会默认给我们生成一个 app。
-
选择 Indices,添加一个新的索引,index-name索引名自定义填写,并记录下来,后面网站配置要用到。再选择API keys,记录“Search-Only API Key”、“Admin API Key”两个秘钥。
-
由于我这里使用的主题是LoveIt,主题配置文件config.toml内置支持algolia插件,所以只需要在站点目录下的config.toml中,配置刚刚生成的索引和Search-Only API Key即可:
|
|
利用GitHub Action配置自动上传索引文件
编辑GitHub Action的CI/CD 配置文件gh-pages.yml,安装algoliasearch,并且使用Node.js配置秘钥文件:
|
|
然后在站点根目录新建push_argolia_index.js文件,内容如下:
|
|
这里我们一直没有用到的Admin API Key,需要在Setting -> Secrets,新建仓库秘钥,名字取为ALGOLIA_ADMIN_KEY
,以便Action 和 js中调用。
至此,配置就完成了。
参考
- Hugo 博客使用 utterances 作为评论系统
- algolia官网
- 上传 algolia 索引文件 参考:https://www.algolia.com/doc/guides/getting-started/quick-start/tutorials/quick-start-with-the-api-client/javascript/?client=javascript