在我们工作和生活的数字世界中,维护和定期更新网站至关重要。
没有内部 Web 开发人员的企业需要一个简单的系统,该系统允许任何人轻松更新内容,同时保持其品牌标识和对潜在消费者和客户的信息传递。
个人和组织可以使用内容管理系统(通常称为 CMS)在单个界面中修改、管理和维护现有网站页面,而无需具备专业技术技能。
WordPress 和 Drupal 是传统内容管理系统 (CMS) 的两个示例,它们将网站的前端和后端组合成一个单一的、可控的应用程序代码库。
但是,有时您的开发人员需要的远不止这些——一个在通过 RESTful API 调用管理和访问内容的同时构建 Web 应用程序的系统。
无头 CMS 可让您和您的团队成员管理和制作内容,同时还允许您通过 API 在所有应用程序中访问它。
无头 CMS 的一些好处如下:
- 未来将不再需要遗留软件开发。
- 跨多个平台管理材料非常简单。
- 从整个企业的中心位置管理内容。
- 扩展和可扩展性计划正在制定中。
Strapi 就是这样一种无头内容管理系统。
让我们在这篇文章中探索它是什么、它的功能、如何使用它等等。
什么是 斯特拉皮?
Strapi 是一个开源 Node.js 框架,用于构建快速且易于控制的 JavaScript API。 它通过将后端与前端隔离开来,简化了采用 Jamstack 技术的应用程序的开发。
使用 API CMS,您可以使管理应用程序的内容变得如此简单,以至于您不再需要创建复杂的代码。
它允许您通过 API 调用完全控制内容,其响应为 JSON 格式。
作为下一代 CMS,Strapi 提供了多种附加功能。 该平台的主要好处是它仅具有一些用于管理内容和用户的基本功能。
您网站的其余组件(数据库、显示工具)完全取决于您。 它适用于许多数据库,包括 PostgreSQL、MongoDB、SQLite、MySQL 和 MariaDB,因此您可以使用您选择的任何数据库。
对于您想用来展示材料的技术也是如此。 您不必使用某个框架、渲染引擎或预制模板。
Strapi 优势
- 可定制: 每个项目都有自己的一组需求。 管理面板和 API 都可以轻松定制。
- 开源: 免费和开源。 数百人维护完整的代码库,可在 GitHub 上获得。
- RESTful 或 GraphQL: 使用 REST 或 GraphQL 从任何客户端(React、Vue、Angular)、移动应用程序甚至物联网使用 API。
- 自托管: 对于企业来说,安全至关重要。 您可以将数据安全地存储在自己的服务器上。 GDPR 合规性可用。
- 通过设计,它是可扩展的: 您可以在几秒钟内安装身份验证系统、内容管理、自定义插件和其他功能。
- 完全 JavaScript: JavaScript 是唯一无所不能的语言。 JavaScript 应该在任何地方使用,包括前端和 Headless CMS。
- 身份验证和权限: 通过根据角色授予或拒绝人们访问您的 API 的权限来保护您的端点。
Strapi 功能
1.用户友好
CMS 为简单的编辑提供了用户友好的功能,并与插件和工具的安装兼容,这些插件和工具为复杂的操作添加了更多功能。
API CMS 提供了一个很好的用户友好界面,任何组成员都可以使用它并与之交互。 它组织良好,可靠,并且几乎不需要关于如何使用它的说明。
2. 跨平台
Headless CMS 允许您通过 API 调用使用任何编程语言共享材料,而无需编写任何困难的代码。
此外,这种技术可以用于任何 编程语言 只要该语言支持 RESTful API,例如 Java、JavaScript、Python 等。
大多数开发人员喜欢 API CMS(如 Strapi)的原因之一是其跨平台技术。
3. 工作流程
开发人员还使用 API CMS 来帮助将团队用户职责与他们的工作流程保持一致,并满足访问控制需求。
使用 Strapi,您可以使用 Webhooks 在内容发生更改时与您的团队沟通,并通过限制内容访问和自动化工作流程来供编辑审查。
4.内容建模
材料建模使您能够记录您现在和将来需要的所有形式的内容,以确保为众多渠道有效设置。
Strapi API CMS 材料建模允许您在用户需要时为他们提供所需的内容。
5。 可扩展性
API CMS 还有助于开发可扩展的应用程序。 由于后端和前端是不同的,后端的任何困难都不会影响程序的整体性能。
此外,后端 CMS 可以在不影响前端的情况下快速升级,反之亦然。 Strapi 的 API CMS 功能允许您快速升级和管理您的应用程序。
开始使用 Strapi
您必须具备一些 REST API 知识才能学习本教程。
第 1 步:安装 Node.js 和 Yarn
要开发 Strapi 项目,您必须在 PC 上安装 Node.js 14。 如果您使用的是 Windows 或 Mac,请转到 下载页面 获取 Node.js。
要在 Linux 上安装 Node.js 14,请打开终端窗口并键入以下步骤。
要构建 Strapi 项目,您需要 Yarn 包管理器。
要安装 Yarn,请打开一个新的终端窗口并输入以下命令。
第 2 步:创建 Strapi 项目
为了展示基本的 Strapi 使用,让我们开发一个文件管理 API。
在终端上,输入下面给出的命令。 请耐心等待,因为此命令需要一段时间才能运行。
该命令创建一个包含项目文件和文件夹的新文件管理器文件夹。
它还提供对 Strapi 的访问:https://localhost:1337/admin。 您必须先创建管理员,然后才能使用新组建的 Strapi。
要制作一个,请填写并提交表格。
步骤 3:创建文件集合
Strapi 集合允许您创建对象模板。 创建具有名称和描述字段的文件项(集合)。
- 在边栏中,选择 内容类型生成器.
- 然后,下 收藏类型, 选择 创建一个新的集合类型.
- 输入“文件”作为显示名称,然后按 继续 按钮。
- 下 名字,单击文本区域并输入您的姓名。
- 在高级设置选项卡中,仔细检查必填字段和唯一字段。
- 点击 添加另一个字段 按钮。
- 丰富的文字 并在 名字 场地。 然后按 完成 按钮。
- 要存储集合,请单击 保存 并等待服务器重新加载。
第 4 步:创建类型集合
让我们为文件项添加一个类型字段。 该区域将指示文件的类型——文档、视频、音频等。
我们将构建一个新的集合类型来演示这是如何完成的。
- 通过转到创建新的集合类型 内容类型生成器 并单击 创建一个新的集合类型.
- 下 显示名称,键入“类型”,然后单击 继续.
- 下 名字,单击文本区域并输入名称。
- 在高级设置选项卡中,选中必填字段和唯一字段,然后单击 完成.
- 要保存集合,请单击 保存.
- 通过转到此集合类型添加一个字段 内容类型生成器 > 收藏类型 > 档 并单击 向此集合类型添加另一个字段.
- 选择 关系 领域。
- 选择 Type 从右侧的下拉菜单中。 然后选择显示的连接 文件只有一种类型.
- 之后,单击 完成 和 保存 保存集合。
第 5 步:将数据添加到集合并发布
- 选择 类型 从左侧菜单中,然后 添加新类型.
- 输入“文件” 名字 区域,然后按 保存 按钮。
- 导航到 档 左侧的菜单并选择 添加新文件.
- 下 名字, 输入“statement.pdf”。
- 点击 保存 选择后 文件 来自 类型选择.
- 您可以自由地将更多内容添加到您的收藏中。
- 按 公共 按钮。
Strapi 定价
您可以通过社区计划立即开始使用 Strapi,该计划永远免费。
它还提供三个高级级别,如下所列用于自托管:
- 青铜计划:每位管理员用户/月 9 美元。
- 白银计划:每位管理员用户/月 29 美元。
- 黄金计划:联系 Strapi 团队以获取定制计划。
Strapi 还提供云服务。 有关更多详细信息,您可以查看 定价部分.
优点
- 简单的数据建模: 它带有一个出色的界面,可以直接对您的数据进行建模。 也就是说,您不需要构建数据库表或编写查询。
- 国际化: 许多 CMS 继续受到 i18n 支持不足的困扰。 斯特拉皮不是那样的。 Strapi 的最新版本现在可以提供任何数据对象的翻译。 这意味着您现在可以轻松地将信息传递给更多的受众。
- 轻松定制: Strapi 最初是一个 Node.js MVC 框架,并且在内部保持这种方式。 您可以根据需要轻松添加新的 API 端点,并在模型和控制器中构建自定义逻辑以支持它们。
- REST 和 GraphQL API: Strapi 提供开箱即用的文档化 REST 和 GraphQL API。 如果您在 Strapi Admin 中构建实体,则可以免费获得 Swagger/GraphQL 文档。
缺点
- 有限的数据库迁移: Strapi 透明地处理数据库中所有类型的内容类型创建/更新。 这意味着您必须在众多设置中手动处理数据库迁移。
- 经常更新: 虽然这对作为一个生态系统的 Strapi 很有帮助,但如果您打算将 Strapi 用于大型内容存储库,那么频繁更新将是一个障碍。 其中一些升级包含重大更改,因此如果没有全面的端到端测试,就很难升级生产系统。
结论
Strapi 是一款出色而强大的工具,无需任何遗留软件开发即可创建 CMS。
由于可以跨多个应用程序使用数据,无头方法将您从单一技术的限制中解放出来,并允许我们尝试新的技术。 它提供了大量新鲜的替代品。
您无需了解任何后端编程语言即可开发它。 只需单击几下,您就可以轻松地将其整合到您的业务中。
Strapi 也是前端开发人员的绝佳工具,他们可以使用它为他们的前端应用程序快速设计 API,同时还可以学习新技术。
随心所欲地玩 Strapi!
发表评论