内容片段模型

内容片段模型定义内容片段的内容结构。

要使用内容片段模型,请:

  1. 为实例启用内容片段模型功能
  2. 创建、配 置内容片段模型
  3. 启用内容片段模 型,以在创建内容片段时使用
  4. 通过配置策略,在所需的资产文件夹上允 许您的内容 片段模型

创建内容片段模型

  1. 导航到​工具资产,然后打开​内容片段模型

  2. 导览至适合您的配置的文件夹。

  3. 使用​创建​打开向导。

    注意

    如果未启用内容片段模型的使用,则​创建​选项将不可用。

  4. 指定​模型标题。还可以添加​标记描述,并根据需要选择​启用模型​以启用模型

    标题和说明

  5. 使用​创建​保存空模型。 将显示一条消息,指示操作成功,您可以选择​打开​以立即编辑模型,或选择​完成​以返回控制台。

定义内容片段模型

内容片段模型使用选择​数据类型​有效地定义所生成内容片段的结构。 使用模型编辑器,您可以添加数据类型的实例,然后配置它们以创建必需字段:

注意

编辑现有内容片段模型可能会影响相关片段。

  1. 导航到​工具资产,然后打开​内容片段模型

  2. 导航到包含内容片段模型的文件夹。

  3. 打开​Edit​所需的型号;使用快速操作,或先选择模型,然后从工具栏中选择操作。

    打开模型编辑器后,将显示:

    • 左:字段已定义
    • 右侧:可用于创建字段的​数据类型(可在创建字段后使用的​属性
    注意

    当字段为​必填字段​时,左窗格中显示的​标签​将标有一个星号标记 (*)。

    属性

  4. 添加字段

    • 将所需数据类型拖动到字段的所需位置:

      数据类型到字段

    • 将字段添加到模型后,右面板将显示可为该特定数据类型定义的​属性。 您可以在此处定义该字段的必需内容。

      • 许多属性是自解释的,有关其他详细信息,请参阅属性
      • 键入​字段标签​将自动完成​属性名称 —— 如果为空,之后可以手动更新。

      例如:

      字段属性

  5. 删除字段

    选择所需字段,然后单击/点按垃圾桶图标。 系统将要求您确认该操作。

    删除

  6. 添加所有必填字段,并根据需要定义相关属性。 例如:

    保存

  7. 选择​保存​以保留定义。

数据类型

可以选择数据类型来定义模型:

  • 单行文本
    • 添加一行文本的一个或多个字段;可以定义最大长度
  • 多行文本
    • 可以是富文本、纯文本或标记的文本区域
  • 数字
    • 添加一个或多个数字字段
  • 布尔型
    • 添加布尔复选框
  • 日期和时间
    • 添加日期和/或时间
  • 枚举
    • 添加一组复选框、单选按钮或下拉字段
  • 标记
    • 允许片段作者访问和选择标记区域
  • 内容引用
  • 片段引用
    • 引用其他内容片段;可用于创建嵌套内容
    • 数据类型可配置为允许片段作者:
      • 直接编辑引用的片段。
      • 根据相应的模型创建新内容片段
  • JSON 对象
    • 允许内容片段作者在片段的相应元素中输入JSON语法。
      • 允许AEM存储您从其他服务复制/粘贴的直接JSON。
      • JSON将传递,并在GraphQL中输出为JSON。
      • 在内容片段编辑器中包括JSON语法高亮显示、自动完成和错误高亮显示。

属性

许多属性是自解释的,对于某些属性,其他详细信息如下:

  • 呈现
    方式用于在片段中实现/呈现字段的各种选项。通常,这允许您定义作者将看到字段的单个实例,还是允许创建多个实例。

  • 字段
    标签输入
    字段 标签将自动生 成属性名称,然后可以根据需要手动更新该名称。

  • ValidationBasic
    验证可由Required属性等机制 ​使用。某些数据类型具有附加验证字段。 有关更多详细信息,请参阅验证

  • 对于数据类型​多行文本,可将​默认类型​定义为以下任一类型:

    • 富文本
    • Markdown
    • 纯文本

    如果未指定,则此字段使用默认值​富文本

    更改内容片段模型中的​默认类型​仅会对在编辑器中打开并保存的现有相关内容片段生效。

  • UniqueContent(
    对于特定字段)在从当前模型创建的所有内容片段中必须是唯一的。

    这用于确保内容作者不能重复已在同一模型的另一个片段中添加的内容。

    例如,在内容片段模型中名为Country的​单行文本​字段不能在两个从属内容片段中具有值Japan。 当尝试第二个实例时,将发出警告。

    注意

    确保每个语言根的唯一性。

    注意

    变量可以具有与同一片段的变量相同的​唯一​值,但不能具有与其他片段的任何变量相同的值。


  • 翻译在CF模型编辑器中选中某个字段上的“可翻译”复选框

    • 确保将字段的属性名称添加到转换配置上下文/content/dam/<tenant>(如果尚不存在)。
    • 对于GraphQL:将“内容片段”字段上的<translatable>属性设置为yes,以允许仅对可翻译内容的JSON输出使用GraphQL查询过滤器。
  • 有关该特定数据类型及其属性的详细信息,请参阅​片段引用(嵌套片段)

验证

各种数据类型现在都可以定义在生成片段中输入内容的验证要求:

  • 单行文本
    • 与预定义正则表达式进行比较。
  • 数字
    • 检查特定值。
  • 内容引用
    • 测试特定类型的内容。
    • 只能引用指定文件大小或更小的资产。
    • 只能引用预定义宽度和/或高度范围内的图像(以像素为单位)。
  • 片段引用
    • 测试特定内容片段模型。

使用引用表单嵌套内容

内容片段可以使用以下任何一种数据类型来形成嵌套内容:

  • 内容引用

    • 提供对其他内容的简单引用;任何类型。
    • 可以为一个或多个引用(在生成的片段中)配置。
  • 片段引用 (嵌套片段)

    • 引用其他片段,具体取决于指定的特定模型。

    • 允许您包含/检索结构化数据。

      注意

      此方法与使用带有GraphQL的内容片段的无头内容投放相关。

    • 可以为一个或多个引用(在生成的片段中)配置。

注意

AEM对以下对象具有重复保护:

  • 内容引用
    这会阻止用户添加对当前片段的引用。 这可能导致一个空的片段引用选取器对话框。
  • GraphQL中的片段引用
    如果创建一个深层查询,它返回彼此引用的多个内容片段,它将在第一次返回null。

内容引用

内容引用允许您从其他源中呈现内容;例如,图像或内容片段。

除了标准属性之外,您还可以指定:

  • 任何引用内容的​根路径
  • 可引用的内容类型。
  • 文件大小限制。
  • 图像限制。 内容引用

片段引用(嵌套片段)

片段引用引用一个或多个内容片段。 此功能在检索内容以在应用程序中使用时特别受关注,因为它允许您检索包含多个图层的结构化数据。

例如:

  • 定义员工详细信息的模型;包括:
    • 对定义雇主(公司)的模型的引用
type EmployeeModel {
    name: String
    firstName: String
    company: CompanyModel
}

type CompanyModel {
    name: String
    street: String
    city: String
}
注意

这与使用内容片段和GraphQL的无头内容投放特别相关。

除了标准属性之外,您还可以定义:

  • 呈现为:

    • 多字段 -片段作者可以创建多个单独的引用

    • fragmentreference -允许片段作者选择对片段的单个引用

  • 模型
    类型可选择多个模型。创作内容片段时,必须使用这些模型创建任何引用的片段。

  • 根路
    径指定引用的任何片段的根路径。

  • 允许创建片段

    这将允许片段作者基于相应的模型创建新片段。

    • fragmentreferenccomport -允许片段作者通过选择多个片段来构建合成

    片段引用

注意

已建立复发保护机制。 它禁止用户在片段引用中选择当前内容片段。 这可能导致一个空的片段引用选取器对话框。
GraphQL中还对片段引用提供重复保护。 如果您在两个相互引用的内容片段之间创建深层查询,则它将返回null。

启用或禁用内容片段模型

要完全控制内容片段模型的使用,您可以设置这些模型的状态。

启用内容片段模型

创建模型后,需要启用该模型,以便:

  • 创建新内容片段时可供选择。
  • 可以从内容片段模型中引用。
  • 可用于GraphQL;因此生成模式。

要启用标记为以下任一类型的模型:

  • 草稿 :mew(从未启用)。
  • 禁用 :已特别禁用。

使用​启用​选项,可从以下任一位置进行:

  • 选择所需的“模型”(Model)时,顶部工具栏显示。
  • 相应的快速操作(将鼠标悬停在所需的模型上)。

启用草图或禁用模型

禁用内容片段模型

还可以禁用模型,以便:

  • 该模型不再作为创建​new​内容片段的基础。
  • 但是:
    • GraphQL模式不断生成,并且仍可查询(以避免影响JSON API)。
    • 仍然可以查询基于模型的任何内容片段并从GraphQL端点返回。
  • 模型不能再被引用,但现有引用保持不变,仍可从GraphQL端点查询和返回。

要禁用标为​Enabled​的模型,请使用以下任一选项中的​Disable​选项:

  • 选择所需的“模型”(Model)时,顶部工具栏显示。
  • 相应的快速操作(将鼠标悬停在所需的模型上)。

禁用启用的模型

允许资产文件夹上的内容片段模型

要实施内容管理,您可以在“资产”文件夹上配置​策略,以控制允许在该文件夹中创建片段的内容片段模型。

注意

该机制类似于在页面的高级属性中允许页面模板](/docs/experience-manager-cloud-service/sites-cloud/authoring/features/templates.html?lang=zh-Hans#allowing-a-template-author)及其子项。[

为​允许的内容片段模型​配置​策略:

  1. 导航并打开所需资产文件夹的​属性

  2. 打开​策略​选项卡,在该选项卡中可以配置:

    • 继承自<folder>

      创建新子文件夹时,策略会自动继承;如果子文件夹需要允许与父文件夹不同的模型,则可以重新配置策略(继承中断)。

    • 按照路径允许的内容片段模型

      可以允许多个型号。

    • 允许的内容片段模型(按标记)

      可以允许多个型号。
      内容片段模型策略

  3. 存任何更改。

文件夹允许的内容片段模型解析如下:

  • 允许的内容片段模型​的​策略
  • 如果为空,则尝试使用继承规则确定策略。
  • 如果继承链未传递结果,则查看该文件夹的​Cloud Services​配置(也先直接,然后通过继承)。
  • 如果以上没有任何结果,则不允许使用该文件夹的模型。

删除内容片段模型

注意

删除内容片段模型可能会影响相关片段。

要删除内容片段模型,请执行以下操作:

  1. 导航到​工具资产,然后打开​内容片段模型

  2. 导航到包含内容片段模型的文件夹。

  3. 从工具栏中选择您的型号,然后选择​删除

    注意

    如果模型被引用,则会发出警告。 采取适当措施。

发布内容片段模型

内容片段模型需要在发布任何相关内容片段时/之前发布。

要发布内容片段模型,请执行以下操作:

  1. 导航到​工具资产,然后打开​内容片段模型

  2. 导航到包含内容片段模型的文件夹。

  3. 从工具栏中选择您的型号,然后选择​发布
    发布状态将在控制台中指示。

    注意

    如果发布的内容片段尚未发布模型,则将显示一个选择列表来指示此情况,并且该模型将随片段一起发布。

取消发布内容片段模型

如果内容片段模型未被任何片段引用,则可以取消发布这些模型。

要取消发布内容片段模型,请执行以下操作:

  1. 导航到​工具资产,然后打开​内容片段模型

  2. 导航到包含内容片段模型的文件夹。

  3. 从工具栏中选择您的型号,然后选择​取消发布
    发布状态将在控制台中指示。

在此页面上