AEM中的内容片段模型为您的定义了内容结构 内容片段, 作为Headless内容的基础。
要使用内容片段模型,您可以:
导航到 工具, 资产,然后打开 内容片段模型.
导航到适合您的文件夹 配置.
使用创建打开向导。
如果 未启用内容片段模型, 创建 选项不可用。
指定模型标题。您还可以添加 标记, a 描述,并选择 启用模型 到 启用模型 如有必要。
使用创建以保存空模型。将显示一条消息,指示操作是否成功,您可以选择打开来立即编辑模型,或选择完成以返回到控制台。
内容片段模型通过选择“数据类型”,有效地定义了结果内容片段的结构。使用模型编辑器,您可以添加数据类型的实例,然后对其进行配置以创建必填字段:
编辑现有内容片段模型可能会影响从属片段。
导航到 工具, 资产,然后打开 内容片段模型.
导航到包含内容片段模型的文件夹。
打开所需的模型进行“编辑”;使用快速操作或选择模型,然后从工具栏中选择操作。
打开模型编辑器后,会显示:
当字段为必填时,左侧窗格中指示的标记会标有星号 (*)。
添加字段
将字段的必需数据类型拖到所需位置:
将字段添加到模型后,右侧面板将显示可以为该特定数据类型定义的属性。您可以在此定义该字段的必需内容。
许多属性的含义一目了然,有关更多详细信息,请参阅属性。
键入字段标签将自动完成属性名称 - 如果为空,则以后可手动更新。
手动更新属性时 属性名称 对于数据类型,名称必须仅包含A - Z、a - z、0 - 9和下划线“_”作为特殊字符。
如果在 AEM 早期版本中创建的模型包含非法字符,请移除或更新这些字符。
例如:
移除字段
选择必填字段,然后单击/点按垃圾桶图标。系统会要求您确认该操作。
添加所有必填字段,并根据需要定义相关属性。 例如:
选择“保存”来保留定义。
可以选择数据类型以定义模型:
允许引入选项卡,以在编辑内容片段内容时使用。
这会在模型编辑器中显示为分隔符,用于分隔内容数据类型列表的各个部分。 每个实例表示新选项卡的开头。
在片段编辑器中,每个实例都会显示为一个选项卡。
此数据类型仅用于格式设置,因此 AEM GraphQL 架构会忽略此数据类型。
许多属性含义一目了然,对于某些属性,其他详细信息如下:
属性名称
为数据类型手动更新此属性时,名称 必须 contain 仅限 A-Z、a-z、0-9和下划线“_”作为特殊字符。
如果在 AEM 早期版本中创建的模型包含非法字符,请移除或更新这些字符。
呈现为
用于在片段中实现/呈现字段的各种选项。通常,这允许您定义作者是否能看到字段的单个实例,还是允许作者创建多个实例。
字段标签
输入 字段标签 自动生成 属性名称,如有必要,可以手动更新。
验证
基本验证可由以下机制提供: 必需 属性。某些数据类型具有额外的验证字段。 请参阅验证,了解更多详细信息。
对于数据类型多行文本,可将默认类型定义为以下任一类型:
如果未指定,则默认值富文本用于此字段。
更改 默认类型 在内容片段模型中,仅当在编辑器中打开并保存现有的相关内容片段后,该片段才会生效。
独特
对于从当前模型创建的所有内容片段,内容(适用于特定字段)必须是唯一的。
用于确保内容作者不能重复已添加到同一模型的另一个片段中的内容。
例如,内容片段模型中名为 Country
的单行文本字段在两个相关内容片段中不能具有值Japan
。尝试第二个实例时会发出警告。
确保每个语言根的唯一性。
变体可以具有与同一片段变体相同的唯一值,但与其他片段变体中使用的值不同。
有关特定数据类型及其属性的更多详细信息,请参阅内容参考。
有关特定数据类型及其属性的更多详细信息,请参阅片段引用(嵌套片段)。
现在,各种数据类型都可以定义在结果片段中输入内容时的验证要求:
内容片段可以使用以下任一数据类型形成嵌套内容:
片段引用(嵌套片段)
引用其他片段,具体取决于指定的特定模型。
让您包含/检索结构化数据。
此方法特别值得关注 使用带有GraphQL的内容片段的Headless内容投放.
AEM 具有以下重复保护:
内容引用
这会阻止用户添加对当前片段的引用。这可能导致出现空的片段引用选取器对话框。
GraphQL 中的片段引用
如果创建一个深层查询,且该查询返回多个相互引用的内容片段,则该查询在第一次出现时返回null。
内容引用允许您呈现来自其他源的内容;例如,图像或内容片段。
除了标准属性之外,您还可以指定:
“片段引用”会引用一个或多个内容片段。在检索应用程序中使用的内容时,此功能特别有意义,因为它允许您检索具有多个层的结构化数据。
例如:
type EmployeeModel {
name: String
firstName: String
company: CompanyModel
}
type CompanyModel {
name: String
street: String
city: String
}
以下内容特别令人感兴趣 使用带有GraphQL的内容片段的Headless内容投放.
除了标准属性之外,您还可以定义:
呈现为:
多字段 – 片段作者可以创建多个单个引用
片段 – 允许片段作者选择对片段的单个引用
模型类型
可以选择多个模型。创作内容片段时,必须使用这些模型创建任何引用的片段。
根路径
这会为引用的任何片段指定根路径。
允许创建片段
这将允许片段作者根据相应的模型创建片段。
已建立重复保护机制。它禁止用户在片段引用中选择当前内容片段。这可能导致出现空的片段引用选取器对话框。
GraphQL 还对片段引用提供了定期保护。如果在两个相互引用的内容片段之间创建深层查询,则将返回空值。
要完全控制内容片段模型的使用,可以设置其状态。
创建模型后,必须启用该模型,以便:
要启用标记为以下任一类型的模型:
您可以使用 启用 选项来自:
也可以禁用模型,这样:
要禁用标记为已启用的模型,您可以从以下任一位置使用禁用选项:
要实施内容管理,您可以配置 策略 ,以控制允许在该文件夹中创建片段的内容片段模型。
该机制类似于允许在页面的高级属性中为页面及其子页面设置页面模板。
要为允许的内容片段模型配置策略:
导航并打开属性,以访问所需的 Assets 文件夹。
打开策略选项卡,您可以在其中配置:
继承自<folder>
创建子文件夹时,会自动继承策略;如果子文件夹需要允许与父文件夹不同的模型,则可以重新配置策略(并中断继承)。
按照路径允许的内容片段模型
可以允许使用多个模型。
按标记允许的内容片段模型
可以允许使用多个模型。
保存任何更改。
文件夹允许的内容片段模型解析如下:
删除内容片段模型可能会影响从属片段。
要删除内容片段模型,请执行以下操作:
导航到 工具, 资产,然后打开 内容片段模型.
导航到包含内容片段模型的文件夹。
选择您的模型,然后从工具栏中删除。
如果参照了模型,则会发出警告。采取适当措施。
在发布任何相关内容片段时/之前,必须发布内容片段模型。
要发布内容片段模型,请执行以下操作:
导航到 工具, 资产,然后打开 内容片段模型.
导航到包含内容片段模型的文件夹。
选择您的模型,然后从工具栏中“发布”。
控制台中会指示已发布状态。
如果发布的内容片段的模型尚未发布,则会显示一个选择列表来指示该情况,并且模型会随该片段一起发布。
如果任何片段未引用内容片段模型,则可以取消发布这些模型。
要取消发布内容片段模型,请执行以下操作:
导航到 工具, 资产,然后打开 内容片段模型.
导航到包含内容片段模型的文件夹。
选择您的模型,然后从工具栏中选择取消发布。
控制台中会指示已发布状态。
您可以编辑内容片段模型的“属性”: