将静态HTML插入AEM页面

时间:2018-04-20 20:24:44

标签: html aem

我有一个HTMl文件和带有页眉,页脚和空白内容的AEM模板。

我想基于模板创建AEM页面,并使用HTMl文件填充空白内容。我知道PageManager API可以使用特定模板创建页面,JcrUtils API可以在创建页面时添加节点(textNode,imageNode)。但是如何将静态HTML文件作为AEM页面的一个组件插入?

1 个答案:

答案 0 :(得分:3)

有很多方法可以实现这一目标 -

  • 坚持AEM构建独立组件的理念,您可以为此HTML创建一个组件,并在模板的页面组件中使用data-sly-resource(页面组件 - 模板通常会回退到页面组件以呈现标题,页脚,正文等)将此组件包含在页面上。

<sly data-sly-resource="${'htmlcomp' @ resourceType='<<project>>/components/htmlcomponent'}"/>

  • 在页面组件中,您可以使用此HTML创建静态文件(例如static-content.html),并在blank-content.html文件中引用静态HTML文件中的data-sly-include

<sly data-sly-include="static-content.html" data-sly-unwrap/>

  • 或者,如果这是需要编写完整标记的用例,您将按照@ronnyfm在注释中提到的内容,并使用适当的显示上下文从创作对话框中将其作为属性读取。检查here以获取可以使用的可用显示上下文。