吉柯静态评论系统

Bas*_*ast 13 static jekyll jekyll-extensions

我的博客当前运行Jekyll和“ 最小错误”主题,并使用该主题的内置功能添加Disqus评论系统。

在我看来,这个基于JavaScript的评论系统违反了在Jekyll中建立静态博客的目的,考虑到:

  1. 它的JavaScript创建了决定性的非静态页面。
  2. 评论不与网站一起存储。
  3. 注释存储在某个数据库中,而不是纯文本文件中。

因此,我的问题是:什么是一种最适合Jekyll哲学的评论系统(理想情况下在gh页上运行)?

我找到了几种可能的候选人:

  1. Isso是一个注释系统,看起来类似于Disqus,它与SQLite数据库一起使用
  2. Jekyll :: StaticComments似乎很合适,但这意味着您必须手动添加电子邮件中的评论。

还有其他选择吗?如果是这样,什么适用于gh-pages,什么适用于自托管的Jekyll博客?

Chr*_*cht 16

这是另一个动态的解决方案,它使用JavaScript,但不将注释存储在第三方提供商处:

这个人通过Jekyll创建了一个静态网站,但使用GitHub的问题跟踪器创建了他的评论。
他使用GitHub Pages来托管他的博客,并且对于每个新帖子,他都会在其博客的存储库中创建一个新期刊。
然后,他使用JavaScript从GitHub API获取问题的注释,并将其显示在页面上。

这是一篇博客文章,解释了如何进行设置:
GitHub托管的GitHub托管博客的注释


bri*_*ist 7

是否由javascript加载,外部托管的注释系统是否“破坏了静态站点的目的”是一个意见问题。

对我而言,关键是要能够将站点托管为完全静态的资源,以利用缓存,CDN,分布式托管等优势。我已经看到了巨大的优势,并且在外部托管我的评论完全不冲突。

话虽如此,这是一个有趣的问题。

Isso(例如Disqus)在客户端上使用JS,并且需要您管理的服务器端软件(基于Python),因此,这似乎与您的理想不符。

Jekyll :: StaticComments方向正确,但是如果GitHub处理您的Jekyll站点,则gh-pages不支持它(您当然可以自己生成静态站点,然后将其托管在GitHub Pages上)。

您还需要一种让用户提交评论的方法,然后将这些评论保存到生成过程可以使用的文件中(不一定像您想的那样通过电子邮件)。

因此,您需要从某个地方(可能是电子邮件)或另一个第三方托管的应用程序(可能是SimpleForm)中获取评论。

然后,您需要手动将它们放入YAML网站,重新生成,然后发布,或者,您可以为您的网站设置一个自动构建过程,该过程可以提取用户提交的内容(如果可用),并自动构建和发布。

除了通过异地媒介手动接受评论之外,您还将处理动态的地方。