几周前,我在WPTavern上添加了这条评论,在一篇文章中,WordPress创始人马特·穆伦韦格(Matt Mullenweg)澄清了他早先的言论,即Jamstack是绝大多数采用它的人的倒退。
因为我喜欢拥有自己的内容,所以我把它转载到我自己的博客里。
我认为马特残酷的诚实是值得欢迎的,因为大多数关于Jamstack的信息都对此赞不绝口。然而,它也来自开发人员使用这些现代新工具,评估自己的便利性和满意度。正如Matt指出的,这并不意味着它让终端用户更容易使用该软件,而这正是WordPress擅长的。
我实际上很喜欢Jamstack,但由于它非常复杂,即使要支持一些其他方面的基本功能,它也相当有限。
最明显的例子是评论,它应该放在构建社区的核心网站上。WordPress非常擅长支持网站中的评论。Jamstack在这方面太糟糕了。这么多年来,一直没有人能够解决Jamstack的注释问题,对我来说,这证明它本质上不适合支持这一特性。
Netlify Forms:没有层次结构,所以可以发布评论,但不能回复(除非在评论正文中添加一些元?这有多难看?)。
将评论存储在GitHub资源库中:将公关与评论合并需要很长时间。
而且,所有这些解决方案都非常复杂。我是否需要设置一个网络挂钩来触发新的构建,仅仅是为了添加评论?然后,是否可以在客户端的LocalStorage中缓存新注释,以备用户在新构建完成之前立即刷新页面?真的吗?
而且,它们没有提供杀手级的功能:向参与讨论的各方发送新评论的通知。社区就是这样建立起来的,网站就是这样成功的。速度是一个因素。但比速度更重要的是,支持社区的功能是动态的。这个网站可能看起来很花哨,但它很可能会变成一个鬼城。
(顺便说一句,作为练习,您可以研究哪些网站最初是wordpress,然后迁移到…,并检查它们当时有多少评论,而不是现在的Jamstack。这些数字很可能会大幅下降)。
另一种方法是不预呈现注释,而是在使用API获取注释后动态呈现它们。是的,这个解决方案是有效的,但是您仍然在后端有WordPress(或一些其他CM)来存储评论:p。
最后一种选择是使用第三方(如Disqus)为您处理此功能。然后,我将与第三方共享我的用户的数据,他们可能会使用它,谁知道如何使用它,以及为了谁的利益(最有可能的,不是我的用户的)。因为我关心隐私,所以这对我来说是一个很大的拒绝。
因此,我自己的博客(这是一个Jamstack站点)不支持评论!如果我想要博客帖子的反馈,我该怎么办?我在相应的tweet上添加了一个链接,要求在那里添加评论。我自己对这种妥协感到羞愧,但考虑到我的网站堆栈,我看不出我能如何解决这个问题。
不过,我仍然喜欢我的博客作为Jamstack,因为它速度快、免费,而且我使用VSCode在Markdown中创建所有博客帖子。但是我不能创建一个社区!所以,正如Matt所说,Jamstack可以处理一些事情。但肯定不是全部。也可能不是那些让你的网站变得成功的网站。