我正在研究无头 CMS 对于我们的静态网站的优势:托管数据库、带有复杂类型定义的漂亮管理界面、表示层(即图形 API)、资产管理和优化,仅举最重要的几项。
但是,我们网站的内容相当动态:经常添加新地点,并且每天通过 cron 脚本检查和更新其内在详细信息(例如地址和开放时间)。我们还将受益于数据库的各种分析,这通过无头 CMS 的读取 API 来实现相当困难。
因此,我的问题是,无头 CMS 适合这种情况吗?如果不是,那么同时拥有一个“主”数据库和一个无头 CMS(从主数据库同步且仅包含面向用户的信息)是否有意义?如何解决这个问题?
我们总是可以选择自己实现所有事情;然而,我觉得这是一个相当“常规”的工作流程,我们不应该重新发明轮子。
是的,无头 CMS 适用于此类用例。
您正在构建的内容似乎与我在 Flotiq storelocator 教程中描述的内容有些相似 - 所以您可能想看看。
在你的问题中,你提到了两件必须指出的重要事情:
这不是无头 CMS 中通常提供的功能。您可能需要连接专用的分析引擎,因此您应该寻找无头 CMS,以便轻松使用另一个系统中的内容。例如 - Flotiq 通过 OpenAPI 兼容的 API(以及 GraphQL,如果您可以使用它)公开您的所有内容来实现这一点。
如果拥有它的主要原因是您的内容的“相当动态”的性质 - 那么我认为您不需要它。在许多情况下,人们将无头 CMS 与静态站点生成器(例如 Gatsby)配对,并且它们还应该支持增量更新,而不需要重建整个网站(如果您的站点很大,这可能看起来是一个问题,但从实践来看,我要知道,在 Gatsby 和 Flotiq 中重建包含 35k 以上页面的整个站点可能需要不到 5 分钟的时间)。
另一方面,如果您因为需要向其他系统提供内容而考虑使用单独的数据库 - 那么您有几个选择:
免责声明 - 正如您可能已经猜到的 - 我与 Flotiq 合作。