[AEM Sites]{class="badge positive" title="适用于AEM Sites)。"}
定义内容片段模型 defining-content-fragment-models
Adobe Experience Manager (AEM) as a Cloud Service 中的内容片段模型定义内容片段的内容结构。 随后可使用这些片段创作页面或作为 Headless 内容的基础。
本页介绍如何使用专用编辑器定义内容片段模型。 查看管理您的内容片段模型,了解创建片段后可用的进一步任务和选项,包括从内容片段控制台中可用的操作、在文件夹中允许模型和发布模型。
- “该模型已配置自定义UI架构。 此UI中显示的字段顺序可能与UI架构不匹配。 要查看与UI架构对齐的字段,您需要切换到新的内容片段编辑器。”
定义内容片段模型 defining-your-content-fragment-model
内容片段模型使用一批 数据类型 有效地定义所得内容片段的结构。 可使用模型编辑器添加数据类型的实例,然后配置它们以创建必填字段:
-
在内容片段控制台中,选择内容片段模型的面板,然后导航到包含您的内容片段模型的文件夹。
note NOTE 在创建模型后,您也可以直接打开模型。 -
打开 编辑 所需的模型;使用其中一个快速操作链接,或者选择模型,然后从工具栏中选择操作。
打开模型编辑器后,会显示:
-
上:
- 主页图标
- 用于在原始编辑器和新编辑器之间进行切换的选项
- 取消
- 保存
-
左侧:可用于创建字段的数据类型
-
中间:字段已与 添加 选项一起定义
-
右侧:使用最右侧的图标,您可以在以下各项之间进行选择:
- 属性:定义和查看选定字段的属性
- 模型详细信息:显示 已启用 状态、模型标题、标记、描述和预览URL
-
-
添加字段
-
可以任选其一:
- 将数据类型从左侧面板拖到中间面板中字段的所需位置。
- 按数据类型选择 + 图标以将其添加到字段列表的底部。
- 在中间面板中选择添加,然后从结果下拉列表中选择所需的数据类型,以在列表底部添加字段。
note NOTE 制表符占位符字段必须始终显示在现有字段上方。 -
您可以使用字段框左侧的圆点形式重新定位字段:
-
将字段添加到模型(并选择该字段)后,右侧面板会显示可为该特定数据类型定义的属性。 您可以在此定义特定的
字段。-
许多属性的含义一目了然,有关更多详细信息,请参阅属性(数据类型)。
-
键入 字段标签 将自动补全属性名称 - 如果为空,则以后可手动更新它。
note caution CAUTION 在手动更新数据类型的 属性名称 属性时,名称必须 仅 包含 A-Z、a-z、0-9 和作为特殊字符的下划线“_”。 如果在 AEM 早期版本中创建的模型包含非法字符,请移除或更新这些字符。
例如:
note NOTE 当字段定义为 必填 时,中间窗格中指示的 标签 将标有星号(*)。 -
-
-
移除字段
选择中间面板中相应字段的垃圾桶图标。
-
添加所有必填字段,并根据需要定义相关属性。
-
选择 “保存” 来保留定义。
数据类型 data-types
有一批数据类型可用于定义您的模型:
-
单行文本
- 为单行文本添加字段;可以定义最大长度
- 字段可以配置为允许片段作者创建新字段实例
-
多行文本
- 一个文本区域,它可为富文本、纯文本或 Markdown
- 字段可以配置为允许片段作者创建新字段实例
note NOTE 在模型中由 默认类型 属性定义该文本区域是富文本、纯文本还是 Markdown。 无法从内容片段编辑器更改此格式,而只能从模型更改。 -
数字
- 添加数字字段
- 字段可以配置为允许片段作者创建新字段实例
-
布尔型
- 添加布尔复选框
-
日期和时间
- 添加日期和/或时间字段
-
枚举
- 添加一组复选框、单选按钮或下拉字段
- 您可以指定对片段作者可用的选项
- 添加一组复选框、单选按钮或下拉字段
-
标记
- 允许片段作者访问和选择标记区域
-
片段引用
-
引用其他内容片段;可用于创建嵌套内容
-
数据类型可配置为允许片段作者执行以下操作:
- 直接编辑引用的片段。
- 根据相应的模型创建新内容片段
- 创建字段的新实例
-
引用指定了引用资源的路径;例如
/content/dam/path/to/resource
note NOTE AEM 对于以下各项具有重复保护: -
内容引用> 这会阻止用户添加对当前片段的引用,并可能导致出现空的片段引用选取器对话框。
-
GraphQL> 中的片段引用如果创建一个深层查询,且该查询返回多个相互引用的内容片段,则它在第一次出现时返回null。
note caution CAUTION 如果要查询多个引用的片段,则建议不要让各种片段模型具有具有相同名称但类型不同的字段名称。 有关详细信息,请参阅用于内容片段的AEM GraphQL API — 限制 内容引用 content-reference
内容引用数据类型允许您呈现来自其他源的内容;例如,图像、页面或体验片段。
除了标准属性之外,您还可以指定:
-
根路径,它指定或表示存储任何引用内容的位置
note NOTE 如果您在使用内容片段编辑器时要在此字段中直接上传并引用图像,则必须指定此属性。 有关进一步详细信息,请参阅引用图像。 -
可引用的内容类型
note NOTE 如果您在使用内容片段编辑器时要直接在此字段中上传并引用图像,则其中必须包括图像。 有关进一步详细信息,请参阅引用图像。 -
文件大小限制
-
如果引用了图像:
- 显示缩略图
- 图像高度和宽度的限制
片段引用(嵌套片段) fragment-reference-nested-fragments
片段引用数据类型可以引用一个或多个内容片段。 在检索内容以供用于您的应用程序时,此功能尤其值得关注,因为通过此功能可检索有多层的结构化数据。
例如:
- 定义员工详细信息的模型;包括:
- 对定义雇主(公司)的模型的引用
code language-xml type EmployeeModel { name: String firstName: String company: CompanyModel } type CompanyModel { name: String street: String city: String }note NOTE 片段引用对于通过 GraphQL 使用内容片段投放 Headless 内容尤其值得关注。 除了标准属性之外,您还可以定义:
-
呈现为:
-
多字段 – 片段作者可以创建多个单个引用
-
片段 – 允许片段作者选择对片段的单个引用
-
-
模型类型
可以选择多个模型。 在添加对内容片段的引用时,必须使用这些模型创建任何引用的片段。 -
根路径
这会指定或表示引用的任何片段的根路径。 -
允许创建片段
这将允许片段作者根据相应的模型创建片段。
- 片段引用组合 – 允许片段作者通过选择多个片段来构建复合
note NOTE 已建立重复保护机制。 它禁止用户在片段引用中选择当前内容片段,可能导致片段引用选取器对话框为空。 GraphQL 中也有针对片段引用的重复保护。 如果在两个互相引用的内容片段之间创建深层查询,则它返回 null。 -