在静态网站上包含评论的各种方法

在静态网站上包含评论的各种方法

像 Eleventy、Jekyll 或 Hugo 这样的静态网站生成器已经成为博客平台或内容管理系统的一个流行选择。当使用像 WordPress 或 Medium 这样的东西时,你会得到一个开箱即用的评论区。在静态环境中,这就不那么简单了。在这篇文章中,我将总结不同的选择,为你的听众提供一个留下评论的方法。

集成第三方

第三方服务大多容易集成。在缺点方面,它们可能会损害性能和隐私。评论是通过 JavaScript 加载的,所以它们可能不会被搜索引擎收录。此外,用户需要有(或创建)一个账户才能发表评论(这在建立社区时可能是一个优点)。最后,所有的评论都位于一个你无法控制的外部服务器上。供应商可能会重新使用这些数据或随时关闭服务(在收购竞争对手后,这并不罕见)。

这里有一些常见的第三方供应商:

  • Disqus - 可能是最流行的评论托管服务。它提供一个基本的广告支持计划,但它有一些隐私、安全和性能问题
  • Facebook 评论 - 另一个成熟的供应商,有与 Disqus 类似的隐私问题。
  • Muut - 小而无广告,但我无法找到一个免费层。起步价为 16 美元/月,这对一个小博客来说可能不值得。
  • Remarkbox - 提供“量入为出”的服务。
  • JustComments - 一个随用随付的服务,所以你的月费取决于你的页面浏览量。起步价为 5 美元/月。基本版本可以自己部署。
  • CommentBox - 提供免费计划,每月有 100 条评论。无限评论的定价从 10 美元/月起步。
  • HyperComments - 另一个基于页面浏览的服务。单个网站起价为 2 美元/月。
  • GraphComments - 以每月 100 万页面浏览量的慷慨的免费级别开始。需要注意一个 Facebook 脚本被注入,这将导致隐私问题。
  • FastComments - 不提供免费套餐,起步价 5 美元/月。
  • Hyvor Talk - 只有高级版,每月 5 美元起。
  • ReplyBox - 起步价 6 美元/月,每月 20,000 次页面浏览。
  • Caint - 一个免费的开源评论服务。

第三方托管

当你关心你的网站性能,但又不想错过第三方服务的便利,你可能想把评论完全外包出去。实施工作就像在你的文章末尾加入一个外部链接一样低。然而,数据所有权仍然是你需要评估的一个问题。

  • Twitter 或 Mastodon - 你可能已经通过 Twitter 推广你的文章。我们可以把这个过程倒过来。对于每一篇博客文章,包括一个回到你的 Tweet 的链接,人们可以在那里留下他们的评论。
  • Reddit - 创建你自己的 subreddit,并在每篇新的博客文章上发布一个链接。作为奖励,你的文章可以被投票,所以你可以得到一个很好的人气概况。
  • Hacker News - 与 Reddit 类似,但针对的是更多的技术受众。你不能为你的链接创建一个专门的空间,但有可能查看每个域的所有帖子,例如 https://news.ycombinator.com/from?site=darekkay.com 查看域名 darekkay.com 下的所有帖子。

这是否是一个可行的选择也取决于你的读者的总人数。

自有部署

由于是自己负责一切,自己部署博客评论能解决许多第三方的问题。这也意味着你必须接管整个管理过程,包括垃圾邮件保护。

  • Discourse - 这是一个完整的讨论平台,主要用于取代经典的讨论区。也可以利用它来主持评论,正如联合创始人 Jeff Atwood 在他的静态博客上所使用的。
  • Talkyard - 与 Discourse 类似。它结合了论坛、问答、聊天和博客评论。Talkyard 也有实惠的托管计划,起步价为 0.5 欧元/月。
  • Coral/Talk - 由 Mozilla 和一些领先的新闻网站建立。
  • Cactus Comments - 联合评论系统,基于 Matrix 协议。
  • Isso - 自 2013 年以来一直存在,拥有 4400 多个 GitHub 星星,是最受欢迎的“独立”项目之一,也就是说,没有一个主要组织的支持。不幸的是,我在 2016 年让它运行时遇到了一些问题。
  • Juvia - 最古老的(2011 年)但仍在维护的开源评论系统之一。
  • Commento - 一个自称 "注重隐私的 Disqus 替代品"。创建于 2017 年 11 月,拥有 3500+ GitHub 星星。有一个托管版本
  • Schnack - 另一个自我托管的选择,在 GitHub 上有 1700+ 颗星。提供审核和从 Disqus 和 Wordpress 导入评论。
  • Remark42 - 有 2.8 千多颗星,它是一个受欢迎的替代方案,被积极维护和扩展。
  • Comntr - 一个新的开源项目。它是一个集成的第三方工具,可以像一个自我托管的解决方案一样运行。
  • Glosa - 一个被低估的开源项目。提供从 Disqus 导入评论。
  • Cusdis - 一个新的(截至 2021 年 4 月)开源项目。
  • Komento - 一个由 IPFS 支持的去中心化的评论托管。截至 2021 年 4 月,目前处于 Beta 阶段。
  • HashOver - 一个免费和开源的 PHP 评论系统,为完全匿名的评论和简单的主题设计。

GitHub

如果你的目标是软件开发者,可以考虑使用 GitHub 进行评论。为每篇博客文章创建一个 GitHub issue,并在你的网站上加载 issue 评论。这里有一些相关的开源工具:

  • Utterances - 一个建立在 GitHub issues 上的轻量级评论小工具。截至 2021 年 5 月得到积极维护。
  • Giscus - 一个由 GitHub Discussions 支持的评论系统。受到 Utterances 的很大启发,并积极维护。
  • Gitment - 一个基于 GitHub issue 的评论系统。自 2018 年起不再维护。

对于更广泛的受众,你仍然可以利用 GitHub,而不需要一个必要的账户。Staticman 首先将评论变成 JSON 或 YAML 等格式。然后,它要么将它们自动提交到你的 git 仓库,要么创建一个拉动请求(如果你喜欢评论修改)。

Webmentions

作为独立社区的一部分,Webmentions 是一种联合/分散的方式来分享评论、喜欢和其他人类互动。这是一个相当技术性的话题,所以请查看 Sebastian De Deyne 的博文以了解更多信息。

手工操作

如果你没有得到大量的评论,可以考虑手动添加评论。让你的读者通过表格或每篇文章末尾的链接给你发邮件。你会得到完全静态的评论,没有 JavaScript,有某种审核,甚至可能有垃圾邮件保护(取决于你的电子邮件供应商)。这是以纯手工工作为代价的。

不使用评论

最后,完全删除评论也是一种选择。我建议至少在页面底部添加一个“给我发个电子邮件”的链接。这些年来,我收到了一些有价值的评论,但我相信如果我没有评论区,他们也会通过电子邮件联系到我。然而,你不可能在人们相互交流的情况下建立一个社区。

Jeff Atwood 声称没有评论的博客就不是博客。当然,他得到了数以百计的评论,而且他已经围绕着它建立了一个大社区。但这未必适用于所有人。来自 Zen Habauta 的 Leo Babauta 关闭了评论,这样他就可以花更多的时间创造内容,而不是审核垃圾评论。

中间选择

在五年的博客生涯中,我有 77 条评论(每月约 1.28 条评论)。这样的互动太少了,无法在自我托管的解决方案中投入太多时间。但我仍然关心(至少是最初的)页面加载,所以在 2020 年删除评论之前,我选择了一个中间路线。我放置了一个“加载评论”的按钮,所以除非用户点击它,否则什么都不会被加载。

你可以把这个方法应用到本文提到的大多数方法中。

总结

我已经介绍了在静态网站上加入评论的不同技术。你应该为你的网站选择哪个选项?没有银弹。最好的方法取决于你的要求。

  • 你准备在设置/管理方面投入多少时间?
  • 性能/隐私/数据所有权对你有多重要?
  • 谁是你的目标受众?
  • 你想建立一个社区吗?

这个博客的主要受众软件是开发者,选择基于 GitHub Discussions 的 Giscus。

有什么想法吗?我遗漏了什么吗?请留下评论。

本文作者 Darek Kay,转载请注明来源链接:

原文链接:https://darekkay.com/blog/static-site-comments/

本文链接:https://tie.pub/2021/12/comments-on-static-site/