Similar a las Extensiones de Apache Sling de la especificación de HTL, AEM ofrece algunas opciones de expresión adicionales que hacen que trabajar con conceptos de AEM sea un poco más fácil directamente en los scripts HTL.
Las mismas tres opciones adicionales que en Apache Sling pueden usarse junto con i18n
:
locale
hint
basename
Sin embargo, en AEM, la compatibilidad con la internacionalización para HTL se implementa con la ayuda de la API desde el paquete com.day.cq.i18n
.
En AEM, data-sly-include
puede tomar una opción adicional wcmmode
que controla el Modo WCM para el script incluido. Los valores permitidos son los nombres de las constantes de enumeración disponibles.
Además de las rutas y los Resources
, el elemento de bloque data-sly-resource
también puede funcionar con Maps
o Records
. Con ambos enfoques, se debe proporcionar la propiedad de cadena resourceName
. Su valor se utiliza para crear un Recurso sintético que se incluye en el contexto de procesamiento. El resto de las propiedades del Record
o Map
que se pasó a data-sly-resource
se utilizará como propiedades Resource
normales. Si falta la propiedad sling:resourceType
en este mapa, se asumirá que el tipo de recurso es el valor de la opción de expresión resourceType
o el tipo de recurso del recurso actual que administra el procesamiento.
Dadas las siguientes propiedades de mapa/registro disponibles en el ámbito del script como map
:
{
resourceName: "myText",
"sling:resourceType": "core/wcm/components/text/v2/text",
"text": "Hello World!"
}
Y dado el siguiente marcado:
<div class="outer" data-sly-resource="${map}"></div>
Se espera el siguiente resultado:
<div class="outer">
<div class="myText">
<div data-cmp-data-layer="{"text-e58d65c472":{"@type":"core/wcm/components/text/v2/text","xdm:text":"<p>Hello world!</p>"}}" id="text-e58d65c472" class="cmp-text">
<p>Hello world!</p>
</div>
</div>
</div>