游客发表
去年帮一个做独立出版的朋友迁站,他原来那套 WordPress 跑了六年,后台登录页被爆破了几万次,插件更新一次崩一次。我建议他试试无头 CMS,他问那是什么,我说你就理解成:把内容仓库和管理后台单独拎出来,前端想用什么写就用什么写。他半信半疑试了三个月,现在逢人就推荐。
无头 CMS 的核心就一句话——内容和展示彻底分家。传统 CMS 像 WordPress、Drupal,后台和前台是绑死的,你用什么主题、怎么渲染,系统替你决定了一大半。无头 CMS 只干一件事:存内容、管内容、通过 API 把内容吐出来。至于这些内容是用 React 渲染成网页、用 Swift 塞进 App、还是用 Unity 做成游戏里的公告板,它不管。
这个“不管”恰恰是它最值钱的地方。
我自己的博客之前用 Ghost,后来想加一个微信小程序端。Ghost 本身有 API,但主题层和后台耦合太深,改起来束手束脚。换成 Strapi 之后,内容模型在后台点几下就建好了,前端用 Next.js 写 Web,用 Taro 写小程序,两边调同一套 REST API,数据完全一致。改一个字段,两端同时生效,不用去两个地方各改一遍。
前端开发者应该会喜欢这种东西。传统 CMS 的主题模板语言——PHP、Twig、Liquid——写起来总有种戴着镣铐跳舞的感觉。无头 CMS 把选择权还给你,想用 Vue 就用 Vue,想用 SvelteKit 就用 SvelteKit,甚至静态站点生成器比如 Astro、Eleventy 都能接。构建时拉取数据生成静态页,性能直接拉满,SEO 也不吃亏。
但别误会,它不是银弹。
内容编辑者可能是最不习惯的那群人。传统 CMS 里改完文章点发布,前台刷新就能看到。无头 CMS 改完内容,前台得重新构建或者等缓存刷新。对于日更几十篇的媒体站点,这个延迟可能无法接受。我见过一个团队用 Contentful 做新闻站,编辑部和工程部天天吵架——编辑嫌预览麻烦,工程嫌 Webhook 触发太频繁。
还有预览问题。传统 CMS 有“预览”按钮,无头 CMS 要实现同等体验,得额外搭一套预览环境,把草稿内容通过 API 拉过来渲染。Strapi 和 Sanity 在这方面做得不错,但配置成本摆在那里。小团队没精力折腾的话,编辑体验会直线下降。
成本也是绕不开的。开源自托管方案像 Strapi、Directus,服务器得自己维护。SaaS 方案像 Contentful、Sanity、Prismic,免费额度用完就按量计费。内容一多、API 调用一频繁,账单涨得比房价还快。我那个独立出版的朋友,一开始用 Sanity 免费版,文章过千、月 API 调用过百万之后,乖乖掏钱上了付费计划。
那到底什么时候该用?我的判断很简单:前端技术栈复杂、多端分发、或者对展示层有高度定制需求的时候,无头 CMS 优势明显。反过来,如果就是一个普通企业官网,编辑就一两个人,那 WordPress 依然是最省事的选择,别为了技术时髦给自己找麻烦。
工具这东西,合适比先进重要。无头 CMS 给了你自由,但自由从来都有代价。
友情链接