如何使用 giscus 作為留言系統
這個網站原本使用的留言系統是 Waline,但試用一陣子後覺得還是基於 GitHub issue 這類的留言系統比較好用,並且我的網站是使用 GitHub Pages 架起來的,用 GitHub 本身的系統也比較方便管理。
當我在找要用哪個系統時,發現了基於 GitHub Discussions 的 giscus,能直接對某個留言回覆,解決了 gitalk 與 utterances 回覆不方便的問題,且設定方法也很簡單。
設定 GitHub 儲存庫
在使用前有幾個前置作業要做:
- 選擇一個公開的儲存庫 (repository) 用於存放留言產生的 Discussions(若網站是使用 GitHub Pages 建議直接選擇存放網站的儲存庫)。
- 安裝 giscus 應用程式到剛剛選擇的儲存庫(建議只安裝到指定的儲存庫,而不是所有儲存庫)。
- 在選擇的儲存庫開啟 Discussions 功能。進入儲存庫的 Settings 選項,往下拉找到 Features 區塊,勾選 Discussions。
設定 giscus
首先到 giscus 的頁面,在設定區塊依照說明及自己的需求填寫完畢。
填完後會自動產生一段如下所示的 HTML code:
<script src="https://giscus.app/client.js"
data-repo="[在此輸入儲存庫名稱]"
data-repo-id="[在此輸入儲存庫 ID]"
data-category="[在此輸入分類名稱]"
data-category-id="[在此輸入分類 ID]"
data-mapping="pathname"
data-strict="1"
data-reactions-enabled="1"
data-emit-metadata="0"
data-input-position="top"
data-theme="preferred_color_scheme"
data-lang="zh-TW"
data-loading="lazy"
crossorigin="anonymous"
async>
</script>
再來只要根據不同架站工具及主題的設定方式,將這段 code 或裡面的資訊設定好就完成了。
Hexo 設定檔設置
若不是使用 Hexo 作為架站工具,或者不是使用 butterfly 主題,此章節僅供參考,不需要可直接略過。
在設定檔設定好後,不需要再使用腳本等方式將 code 嵌入文章內。
首先在 _config.butterfly.yml
找到 Comments System 的區塊,將使用的系統改為 giscus:
comments:
use: giscus
再往下找到 giscus 的設定,照著前面在 giscus 頁面產生出來的 code 修改即可。若有需要也可添加其他設定在 option
:
giscus:
repo: [在此輸入儲存庫名稱]
repo_id: [在此輸入儲存庫 ID]
category_id: [在此輸入分類 ID]
theme:
light: light
dark: dark
option:
data-mapping: "pathname"
data-strict: "1"
data-emit-metadata: "0"
data-input-position: "top"
data-lang: "zh-TW"
這樣就設定完成了。
參考連結
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 JHTNT Blog!
評論