logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动

配置概览(与其他信息类型的对比)

03/10/2025, by Ivan

在 Drupal 8 中有几种信息类型:

  • 内容 (Content)

这些信息旨在显示在您的网站上并由用户编辑:文章、基本页面、图片、文件等。

  • 会话 (Session)

关于单个用户与站点交互的信息,例如他们在视图过滤器中的当前选择。这是临时的,并且只针对单个用户。

可能会频繁更改和/或无需用户干预的信息。例如:Cron 上次运行的时间、是否需要重建节点访问权限等。

关于您网站的信息,它不是内容,并且不会经常更改,例如您网站的名称、您定义的内容类型和视图等。

关于您网站的信息,但这些信息也存储在其他地方。缓存仅用于加快数据检索,它们从不存储规范数据。

您网站的只读信息,硬编码在 settings.php 文件中。

如何决定分类您的信息

并不总是很清楚应该将您的模块存储的信息分类为内容、状态还是配置。以下是一些指导:

  • 配置 vs 状态:如果您的信息需要从开发服务器部署到生产服务器,那么它很可能是配置而不是状态。
  • 配置 vs 内容:考虑网站构建者和网站编辑者的角色。如果“网站编辑者”角色需要编辑该信息,它可能是内容。如果只有“网站构建者”角色可以编辑该信息,那么它可能是配置。但这不是绝对规则。
  • 配置 vs 内容:考虑数量。如果有大量项目,可能是内容。如果只有少量,可能是配置。
  • 配置 vs 内容:配置通常定义“事物的类型”,例如内容类型、分类词汇表等。而这些类型下的每个“事物”则是内容的一部分:内容节点、分类术语等。

简单配置 vs 配置对象

在使用配置管理系统时,您首先需要决定的事情之一是要存储哪种类型的配置。

简单配置更容易实现,因此非常适合保存逻辑值、整数或简单文本字符串等基础配置。例如,模块中某个功能的启用/禁用开关,或系统模块中配置的网站名称。简单配置还包括模块正常运行所需的参数。例如,JavaScript 聚合必须启用或禁用。如果它不存在,系统模块将无法确定正确的操作顺序。简单配置只能依赖于提供它的模块。例如,system.site 仅依赖于 System 模块。

配置对象存储用户可以创建和删除的事物列表;无论是 0 个还是 100+ 个,您的代码都能正常运行。例如:图像样式、视图等。配置对象带有完整的 CRUD 钩子,像 Drupal 中的任何其他对象一样触发,因此非常适合其他模块可能需要使用或响应的配置。例如,Views 使用配置对象,使其在运行时触发钩子,从而允许其他模块向 Views 提供配置(视图)。配置对象可以有动态依赖关系。和简单配置一样,它们依赖于提供它们的模块。例如,views.view.frontpage 依赖于 Views 模块,但由于它列出了节点,它也依赖于 Node 模块。如果稍后更新为仅显示 Article 节点,它还会依赖于 Article 配置对象 (node.type.article),依此类推。