学习使用 AEM 对 Headless 进行内容建模的基础知识 content-modeling-headless-basics
迄今为止的故事 story-so-far
在 AEM Headless 内容架构师历程的开头,简介涵盖了与针对 Headless 进行内容建模相关的基本概念和术语。
本文基于这些内容编写,以便您了解如何对 AEM Headless 项目进行内容建模。
目标 objective
- 受众:初学者
- 目标:介绍 Headless CMS 的内容建模概念。
使用内容片段模型进行内容建模 architect-content-fragment-models
内容(数据)建模是一系列成熟的技术,在开发关系数据库时通常会使用这些技术,那么内容建模对 AEM Headless 意味着什么呢?
为什么? why
为了确保您的应用程序能够一致而高效地从 AEM 请求和接收所需内容,必须设置这些内容的结构。
这意味着您的应用程序会预先知道响应的形式,从而了解如何处理它。这比接收自由格式的内容要简单得多,必须对自由格式的内容进行分析以确定它包含什么以及如何使用它。
方法简介 how
AEM 使用内容片段提供以 Headless 方式将内容交付到应用程序所需的结构。
内容模型的结构将:
- 由内容片段模型的定义识别,
- 用作用于内容生成的内容片段的基础。
使用 AEM GraphQL API 发出对您的内容的请求,这是标准 GraphQL API 的自定义实施。AEM GraphQL API 允许应用程序对内容片段执行(复杂)查询,每个查询都根据特定的模型类型执行。
然后,您的应用程序可以使用返回的内容。
使用内容片段模型创建结构 create-structure-content-fragment-models
内容片段模型提供了多种机制,可让您定义内容的结构。
内容片段模型描述了一个实体。
在模型中:
- 数据类型 可让您定义单个属性。
例如,以 文本 形式定义包含教师姓名的字段,并以 数字 形式定义其服务年数。 - 数据类型 内容引用 和 片段引用 可让您在 AEM 中创建与其他内容的关系。
- 片段引用 数据类型可让您通过嵌套内容片段(根据模型类型)来实施结构的多个层次。这对于您的内容建模是至关重要的。
例如:
数据类型 data-types
AEM 提供了以下数据类型以供您用来进行内容建模:
- 单行文本
- 多行文本
- 数字
- 布尔值
- 日期和时间
- 枚举
- 标记
- 内容引用
- 片段引用
- JSON 对象
引用和嵌套内容 references-nested-content
两种数据类型都提供了对特定片段之外的内容的引用:
-
内容引用
这提供了对任意类型的其他内容的简单引用。
例如,您可以在指定位置引用图像。 -
片段引用
这会提供对其他内容片段的引用。
这种类型的引用用于创建嵌套内容,引入对内容进行建模所需的关系。
数据类型可配置为允许片段作者执行以下操作:- 直接编辑引用的片段。
- 根据相应的模型创建新内容片段
结构层次(嵌套片段) levels-of-structure-nested-fragments
对于内容建模,片段引用 数据类型可让您创建结构的多个层次和关系。
借助此引用,您可以 连接 各种内容片段模型来表示相互关系。这可让 Headless 应用程序遵循连接并在必要时访问内容。
片段引用是这样做的 - 它们允许您引用其他片段。
例如,您可能定义了以下内容片段模型:
- 城市
- 公司
- 人员
- 奖励
看似简单明了,但公司有 CEO 和员工…他们每个人都被定义为一个人员。
一个人员可以获得一个(或两个)奖励。
-
我的公司 – 公司
- CEO – 人员
- 员工 – 人员
- 个人奖励 – 奖励
这只适用于初学者。根据复杂性,奖励可以是特定于公司的,或者公司可以在特定城市设立主要办事处。
可以使用片段引用来表示这些相互关系,因为您(架构师)、您的内容作者和 Headless 应用程序都已理解它们。
后续内容 whats-next
现在您已了解基础知识,下一步是了解如何在 AEM 中创建内容片段模型。这将介绍和讨论可用的各种引用,以及如何使用片段引用创建结构层次 - 针对 Headless 的建模的关键部分。
其他资源 additional-resources
-
基本处理 – 此页面主要基于 站点 控制台,但许多/大多数功能也用于在 Assets 控制台下创作 内容片段。