如何在AEM 5.6.1中限制可以在模板的特定parys中使用的组件,而无需在设计模式下选择它们?
/etc/designs/[your design]/jcr:content
下,您可以定义节点来代表您的每个模板及其段落,并列出每个模板允许的组件。[nt:unstructured]
)。foundation/components/parsys
的和String[]
的组件属性。例如,请查看Geometrixx如何定义:http://localhost:4502/crx/de/index.jsp#/etc/designs/geometrixx/jcr%3Acontent/contentpage/par
您可以通过VLT提取它,这将存储为.content.xml
文件在etc/designs/[your design]
下。<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0"
xmlns:cq="http://www.day.com/jcr/cq/1.0"
xmlns:jcr="http://www.jcp.org/jcr/1.0"
xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
jcr:primaryType="cq:Page">
<jcr:content
cq:template="/libs/wcm/core/templates/designpage"
jcr:primaryType="cq:PageContent"
jcr:title="You Design">
<yourTemplate jcr:primaryType="nt:unstructured">
<yourParsys
jcr:primaryType="nt:unstructured"
sling:resourceType="foundation/components/parsys"
components="[foundation/components/text,foundation/components/image]"/>
</yourTemplate>
</jcr:content>
</jcr:root>
这能让你将该文件跨实例移动(例如,在部署CRX包时),以便您不必单独配置环境并且可以通过版本控制来管理允许哪些组件在何处使用。您可以为组件设置允许父级属性,以限制组件的使用范围,例如:allowedParents="[*/parsys]"
yourParsys
中的组件数量?例如,我希望只能将一个foundation/components/text
拖放到其中,而不允许其他任何组件。 - Behrang