使用 Headless CMS 解决传统 CMS 痛点

阅读时长 3 分钟读完

传统的 CMS(Content Management System,内容管理系统)设计了一整套模板和样式,让使用者能够快速的建立内容和页面。然而,逐渐增长的需求和开发技术的进步,让传统的 CMS 设计变得过于复杂、过于僵硬,无法满足现代 Web 开发的需求。于是,Headless CMS 应运而生。

什么是 Headless CMS

Headless CMS 是一种新型 CMS 架构,更加强调可定制化和极大的灵活性。“Headless” 一词会让人想到没有头部,也就是说 Headless CMS 不关注如何组织和呈现内容,这部分的工作交给其他系统去完成。

Headless CMS 只提供对数据库的访问,它可以被用于任何类型的应用,包括原生应用、Web 应用、电子商务等。基本上任何内容管理,包括博客文章、新闻内容、产品信息、用户帐户信息、甚至是文件和图片,都可以通过 Headless CMS 进行管理。

Headless CMS 的优势

可定制化

Headless CMS 提供灵活自由的页面内容设计,自由定义自己的数据结构、内容类型、字段。传统 CMS 由于为了应对各种环境需要提供大量的功能,因此变成了一个庞大复杂的系统。反过来,Headless CMS 更轻盈、功能更简单,能快速适应新的开发需求。

数据分离

Headless CMS 将内容数据和前端样式分离,大小、内容格式以及数据存储方式都可以被开发者自行定义,完全以自己的业务模型为出发点。因此,为不同客户端和业务场景输出数据,比如 Web 端、手机端等,都变得相对简单了。

平台无关

Headless CMS 给开发者提供了一种强大的工具,可以将所有的内容和业务逻辑拆分为小型的单元,可以在任何平台和客户端上使用。对于开发者而言,Headless CMS 这种内容管理方式使得快速迭代成为了可能。

Headless CMS 的示例代码

以下代码展示了如何基于 Strapi(一种常见的 Headless CMS)来建立一个简单的博客系统。

安装 Strapi

创建博客系统项目

添加一个博客类型

编辑博客类型的字段

api/blog/models/blog.js 中加入以下代码:

-- -------------------- ---- -------
-------------- - -
  ----------- -
    ------ -
      ----- ---------
      --------- ----
    --
    -------- -
      ----- -------
      --------- ----
    --
    ------------- -
      ----- -----------
      --------- ----
    -
  -
--

启动服务器

以上的代码示例展示了 Strapi 如何用于在 Web 应用程序中处理博客数据。开发者可以使用以上模版来快速创建一个博客系统,而这个系统的数据通过 API 发送给 Angular,React 或 Vue 等前端框架,同时很容易地在其他客户端应用中引用。

总结

Headless CMS 提供了更加灵活的方式管理内容,支持开发者将数据在任何客户端或平台上使用。Headless CMS 不仅仅解决了上面所提到的问题,同时也能更好地建立一个高性能、灵活的应用程序,因此,它可能在未来的 Web 发展中占领重要地位。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64d1f70db5eee0b525951b3f

纠错
反馈