Cloud2016

照它写的来吧

  1. https://github.com/rbind/xiangyun/blob/master/layouts/partials/head_custom.html 里加入
  <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 去和文章关联

    试验成功

    这是我的仓库, issue依然需要到具体的帖子登录一下github,然后会新建issue,issue的标签打上的是帖子路径,原理是用标签做评论与issue的对应识别。

    这是添加gitalk的帖子和评论

    添加gitalk的commit,, 代码跟上面的过程差不多,只是把配置移动到了config里,不过不满意的地方在与直接暴露githubapp 的secret,感觉我repo是公开的话还是有点安全隐患

    参考的帖子


    其实给评论初始化还是得靠管理员一个一个帖子点开,木有全自动啊

      tctcab 你提到安全问题还真让人担心,那是否可以从 netlify 传环境变量进去呢?就像传递 NODE_VERSION 那样

      另一个蛋疼的是为了在别人的博客下面留个言,还得授权这么的信息给人家,推己及人,似乎不太好,我干脆把评论关掉好了

        Cloud2016

        哇测了一下还真的是,那我也先关了,看得出来gitalk还是不成熟,用issue来做评论系统根本用不到repo写入权限。

        太具体的我不清楚,前几天想换模板,搜到 zozo 使用了 valine 作为评论系统,国产可用,可以不使用邮箱登匿名评论,也就是个人信息是非必填内容。尽管对我来讲评论没什么用,但看上去是个不错的的选择。

        2 个月 后
        2 年 后

        最近发现了基于 GitHub Discussions 的 giscus,这个功能更强,可以回复别人的评论。而且 utterances 的评论可以迁移。不过Discussions 还是个挺新的功能,怕有啥变动破坏了 giscus,我还是继续观望。

          9 个月 后

          Giscus 支持延迟加载,即:在滚到评论区之前,评论是不会加载的。这有利于页面本身的加载速度。

          对我而言,从 Utterances 切换到 Giscus 最重要的原因是后者可以将评论和回复分开,在 Utterances 中,所有评论是一栋楼,楼下的评论之后楼上所有人都要收到通知,这样太扰民了,而 Giscus 中可以只回复某一层。

          从 Utterances 切换到 Giscus 在技术上也比较简单,就是把 Github Issues 转换为 Discussions,然后换一下 JS 脚本。这比从别的地方迁移评论到 Giscus 简单无数倍,所以我个人强烈建议 Utterances 用户入新坑。

            yihui 最近你跟@CyrusYip的讨论,我依然会收到通知邮件。看了一下,我似乎应该不在回复范围内。基于类似的担心,我极大地减少了在此类评论系统里留言的次数,虽然不时依然会来“骚扰”一下:)

              Liechi 基于类似的担心,我极大地减少了在此类评论系统里留言的次数,虽然不时依然会来“骚扰”一下:)

              在 utterances 评论后你会订阅对应的 GitHub issue,点一下issue 底部的 unsubscribe 应该就不会收到和你无关的评论。

                CyrusYip 我比较能忽略这样的邮件,主要是担心我回复的时候打扰到别人。