管理分类数据
创建对象:
- 管理员
- 开发人员
了解如何管理分类数据,以便在 AEM with Edge Delivery Services 网站上使用标签。
简介
标记是一项重要功能,可帮助您组织和管理页面。AEM 中的标记控制台允许您创建丰富的标记分类来组织您的页面。
这些标签不仅对您和您的作者组织内容有用,而且对您的读者也很有用。标签及其分类法可用于页面上的组件,以帮助读者浏览您的内容。
通用编辑器仅适用于您的标签 ID。通过为您的内容创建一个分类页面,您可以将这些标签的描述以各种语言形式向通用编辑器公开,以便它在呈现内容时可以使用这些信息。
创建分类页面
分类法的创建方式与 AEM 中的任何其他页面一样。
-
导航至 Sites 控制台。
-
选择您想要创建分类的位置。
-
点击或单击 创建-> 页面。
-
在 创建页面 向导的 模板 选项卡上,选择 分类 模板,然后点击或单击 下一步。
-
在 创建页面 向导的 属性 选项卡上,为页面提供一个有意义的 标题,并在 标签 字段中,使用标签选择器选择您想要包含在分类中的标签或命名空间。
-
点击或单击 创建。
分类页面已创建。在 成功 对话框中,您可以点击或单击 完成 对话框,以关闭该消息,或点击或单击 打开 在页面编辑器中编辑该页面。
记下分类页面生成的页面名称,以便在后续步骤中使用。
创建分类页面
您可以像编辑 AEM 中的其他页面一样开始编辑分类页面。
-
导航至 Sites 控制台。
-
选择您想要编辑的分类。
-
在操作栏中点击或单击 编辑。
-
页面编辑器打开并显示分类。
- 分类页面在页面编辑器中是只读的。
-
点击或单击工具栏中的 页面信息 图标,然后选择 打开属性。
-
在 页面属性 窗口内,您可以更新页面名称并使用标签选择器来更新分类中包含的标签和命名空间。
-
点击或单击 保存并关闭。
页面编辑器中显示的页面是只读的,因为分类的内容是根据所选标签和命名空间自动生成的。它们起到一种过滤器的作用,可以自动生成分类的内容。因此,没有理由直接在编辑器中编辑页面。
当您更新底层标签和命名空间时,AEM 会自动更新分类页面的内容。但是您必须在进行任何更改之后重新发布分类,以便您的用户能够看到这些更改。
更新分类发布的 paths.json
就像在管理和发布 Edge Delivery Services 网站的表格数据时一样,您需要更新项目的 paths.json
文件,以便能够发布分类数据。
-
在 GitHub 中打开您的项目的根目录。
-
点击或单击
paths.json
文件以打开其详细信息,然后点击“编辑”图标。 -
添加一行以将新分类页面映射到
.json
资产。{ "mappings": [ "/content/<site-name>/:/", "/content/<site-name>/<taxonomy-page-name>:/<taxonomy-json-name>.json" ] }
<taxonomy-page-name>
必须与您创建的分类页面的名称相匹配。<taxonomy-json-name>
可以是您选择的任何有效名称。
-
单击“提交更改…”将更改保存到
main
。- 根据您的流程提交
main
或创建拉取请求。
- 根据您的流程提交
每个分类页面只需执行一次此过程。完成后,您可以发布您的分类。
- 编辑分类页面。
- 编辑或添加分类页面中包含的标签和命名空间。
如果您创建了一个新的分类页面,则必须首先在项目中的 paths.json
文件中添加一个它的映射。
访问分类信息
在发布分类后,通用编辑器就可以利用其信息并将其显示给您的用户。
您可以通过以下地址以 JSON 数据的形式访问分类。
https://<branch>--<repository>--<owner>.aem.page/<taxonomy-json-name>.json
在将您的分类法映射到项目中的 paths.json
文件时,请使用您定义的 <taxonomy-json-name>
。 分类数据以 JSON 数据的形式返回,如下例所示。
{
"total": 3,
"offset": 0,
"limit": 3,
"data": [
{
"tag": "default:",
"title": "Standard Tags"
},
{
"tag": "do-not-translate",
"title": "Do Not Translate"
},
{
"tag": "translate",
"title": "Translate"
}
],
":type": "sheet"
}
当您更新分类并重新发布时,此 JSON 数据将自动更新。您的应用程序可以通过编程方式为用户获取这些信息。
如果您需要维护多种语言的标签,您可以通过将 ISO2 语言代码作为 sheet=
参数值传入来访问这些语言。