给你的MKDOCS搭建评论系统
约 269 个字 48 行代码 预计阅读时间 1 分钟
Giscus
通过 theme extension我们可以轻松的给站点添加第三方评论系统. 在这里,我们使用Giscus, 他基于Github,以 discussions作为后端
Giscus配置
在使用之前 Giscus, 我们需要完成以下步骤
- 安装 Giscus GitHub App 并连接到Github的存储库,用来存放评论。 注意这个存储库可以不同于你存放文档的存储库.
-
__访问 Giscus __ 并保存由此产生的代码片段用来加载评论系 统. 复制这个代码片段,后面会用到. 大概长下面这个样子:
comments.html
是默认存放这个代码的地方. 根据 theme extension 的提示
然后添加以下代码:
{% if page.meta.comments %}
<h2 id="__comments">{{ lang.t("meta.comments") }}</h2>
<!--在这里存放你保存的代码片段 -->
<script>
var giscus = document.querySelector("script[src*=giscus]")
var palette = __md_get("__palette")
if (palette && typeof palette.color === "object") {
var theme = palette.color.scheme === "slate" ? "dark" : "light"
giscus.setAttribute("data-theme", theme) // (1)!
}
document.addEventListener("DOMContentLoaded", function() {
var ref = document.querySelector("[data-md-component=palette]")
ref.addEventListener("change", function() {
var palette = __md_get("__palette")
if (palette && typeof palette.color === "object") {
var theme = palette.color.scheme === "slate" ? "dark" : "light"
var frame = document.querySelector(".giscus-frame")
frame.contentWindow.postMessage(
{ giscus: { setConfig: { theme } } },
"https://giscus.app"
)
}
})
})
</script>
{% endif %}
注意
这个代码块为我们实现了评论系统主题根据网站主题自动切换
接下来,我们就只需要在你的每篇文章的头文件中加入以下代码,就可以使用评论了