https://github.com/gitalk/gitalk 比较受欢迎,最关键的是国内可以访问,而有 Github 账户的人也越来越多了,所以我准备在自己的博客中加入 gitalk
根据 https://github.com/gitalk/gitalk/blob/master/readme-cn.md 指示,我已经为自己的网站创建了 GitHub Application
接下来怎么操作呢?
我的 repo 在 https://github.com/rbind/xiangyun
https://github.com/gitalk/gitalk 比较受欢迎,最关键的是国内可以访问,而有 Github 账户的人也越来越多了,所以我准备在自己的博客中加入 gitalk
根据 https://github.com/gitalk/gitalk/blob/master/readme-cn.md 指示,我已经为自己的网站创建了 GitHub Application
接下来怎么操作呢?
我的 repo 在 https://github.com/rbind/xiangyun
照它写的来吧
<link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css">
<script src="https://unpkg.com/gitalk/dist/gitalk.min.js"></script>
2.另存https://github.com/rbind/xiangyun/blob/master/themes/hugo-xmag/layouts/partials/comments.html
到https://github.com/rbind/xiangyun/tree/master/layouts/partials,然后添加
<div id="gitalk-container"></div>
<script>
var gitalk = new Gitalk({
clientID: 'GitHub Application Client ID',
clientSecret: 'GitHub Application Client Secret',
repo: 'GitHub repo',
owner: 'GitHub repo owner',
admin: ['GitHub repo owner and collaborators, only these guys can initialize github issues'],
id: location.pathname, // Ensure uniqueness and length less than 50
distractionFreeMode: false // Facebook-like distraction free mode
})
gitalk.render('gitalk-container')
</script>
也可以把上面js部分单独保存为.js人,然后替换为<script src="xxx.js"></script>
tctcab 现在感觉还差一步,滑到文章底部发现错误,文章评论的初始化如何搞呢? Github 的 Issues 如何创建,手动吗?
感觉和问题未初始化文章提示Error: Network Error类似,但是不知道如何解决
似乎问题就是如何创建 Issues 去和文章关联
我也看到有人在博客里用 Gittalk,比如
https://github.com/Liam0205/liam0205.github.io/issues
看起来挺有规律的,应该不是手动创建的
试验成功
这是我的仓库, issue依然需要到具体的帖子登录一下github,然后会新建issue,issue的标签打上的是帖子路径,原理是用标签做评论与issue的对应识别。
添加gitalk的commit,, 代码跟上面的过程差不多,只是把配置移动到了config里,不过不满意的地方在与直接暴露githubapp 的secret,感觉我repo是公开的话还是有点安全隐患
其实给评论初始化还是得靠管理员一个一个帖子点开,木有全自动啊
最近瞎逛别人的博客发现了utterance,也是用的github issue来做的,原理类似gitalk 或者gitment,安全性看起来utterance做得比其他两个好,只用了oauth验证了身份。
@Cloud2016 有空可以试试
之前也从 Disqus 换到了 Utterances,并手动迁移了所有数据
https://nanx.me/blog/post/migrating-from-disqus-to-utterances/
最近发现了基于 GitHub Discussions 的 giscus,这个功能更强,可以回复别人的评论。而且 utterances 的评论可以迁移。不过Discussions 还是个挺新的功能,怕有啥变动破坏了 giscus,我还是继续观望。
CyrusYip 昨天从 utterances 转到 giscus,加载速度快了很多,回复别人的评论也很舒服,强烈推荐。
Giscus 支持延迟加载,即:在滚到评论区之前,评论是不会加载的。这有利于页面本身的加载速度。
对我而言,从 Utterances 切换到 Giscus 最重要的原因是后者可以将评论和回复分开,在 Utterances 中,所有评论是一栋楼,楼下的评论之后楼上所有人都要收到通知,这样太扰民了,而 Giscus 中可以只回复某一层。
从 Utterances 切换到 Giscus 在技术上也比较简单,就是把 Github Issues 转换为 Discussions,然后换一下 JS 脚本。这比从别的地方迁移评论到 Giscus 简单无数倍,所以我个人强烈建议 Utterances 用户入新坑。
chuxinyuan 我刚把评论系统换了,挺顺利的。