logo

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

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

演示 EBT 模块 下载 EBT 模块

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

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

演示 EPT 模块 滚动

滚动

在你的 Drupal 8 模块中启用默认配置

04/10/2025, by Ivan

主要主题: 默认配置

概览

在 Drupal 7 中,默认配置(例如内容类型、字段配置、视图等)需要专门的 PHP 代码来进行安装和更新。而在 Drupal 8 中,这些配置与配置管理系统一起存储在 YAML 文本文件中。

例如,配置管理系统负责创建和管理内容类型。你可以通过创建一个命名和结构正确的配置文件,将内容类型与模块一起分发。

示例

创建一个名为 node.type.example_mytype.yml 的文件,并将其放置在你的模块目录下的 config/install 子目录中。例如,如果模块位于 /modules/example,那么该文件路径就是 /modules/example/config/install/node.type.example_mytype.yml

请遵守命名约定:在内容类型前加上模块机器名作为前缀,并用下划线分隔,以避免与其他配置文件冲突。

然后在该文件中写入以下代码:

type: example_mytype
name: Example
description: '使用 <em>example</em> 内容来更好地学习 Drupal 8 开发。'
help: ''
new_revision: false
display_submitted: true
preview_mode: 1
status: true
langcode: en

参见 node.type.article.yml 作为实际示例。

你也可以用同样的方式为其他内容启用默认配置,例如区块放置、视图、文本格式、编辑器配置、用户角色等等。

你还可以为表单字段(例如节点作者字段)设置默认值。

如果你在添加该内容类型之前已经安装了模块,那么需要先卸载再重新安装模块,配置才能生效。

导出配置

你可以通过 配置 > 开发 > 配置同步 来创建这些文件。你可以使用「单个导入/导出」功能来导出单个配置片段,此时会提供一个文本区域,包含代码供你复制/粘贴到配置文件中。或者你可以执行「完全导出」,下载一个包含所有配置文件的 tar.gz 压缩包。

在使用导出的配置时,重要的一点是要删除配置中的 UUID。每个配置片段都由该 ID 唯一标识。如果你在模块中包含这个 UUID,那么所有使用该模块的网站都会使用相同的 ID,从而失去唯一性。如果你删除这行配置,Drupal 会在启用模块时生成新的 UUID,从而保证唯一性。

uuid: 626187e6-2176-4a73-8900-c0912580e4a1 < < 删除这一行!
langcode: en
status: true

Drupal Console

Drupal Console 工具提供了以下命令:

它会执行以下任务:

  • 导出与指定内容类型相关的所有配置文件(包括字段配置文件)。
  • 将其放置到指定模块的配置目录中。

因此,它节省了上文中手动处理所需的大量工作。

另请参阅