Estensioni AEM aem-extensions
Simile alle estensioni Apache Sling della specifica HTL, AEM offre alcune opzioni di espressione aggiuntive che facilitano l’utilizzo dei concetti di AEM direttamente negli script HTL.
i18n i18n
Le stesse tre opzioni aggiuntive disponibili per Apache Sling possono essere utilizzate insieme a i18n
:
locale
hint
basename
Tuttavia, in AEM il supporto all’internazionalizzazione per HTL viene implementato con l’aiuto dell’API dal pacchetto com.day.cq.i18n
.
data-sly-include
data-sly-include
In AEM, data-sly-include
può richiedere un’opzione wcmmode
aggiuntiva che controlla la Modalità WCM per lo script incluso. I valori consentiti sono i nomi delle costanti enum disponibili.
data-sly-resource
data-sly-resource
Oltre ai percorsi e Resources
, l’data-sly-resource
elemento del blocco può anche funzionare con Maps
o Records
. Con entrambi gli approcci, è necessario fornire la proprietà resourceName
della stringa. Il relativo valore viene utilizzato per creare una Risorsa sintetica che viene inclusa nel contesto di rendering. Le altre proprietà da Record
o Map
trasmesse a data-sly-resource
vengono utilizzate come normali proprietà Resource
. Se la proprietà sling:resourceType
non è presente in questa mappa, come tipo di risorsa sarà considerato il valore dell’opzione espressione di resourceType
oppure il tipo di risorsa della risorsa corrente che gestisce il rendering.
Considerate le seguenti proprietà mappa/record disponibili nell’ambito dello script come map
:
{
resourceName: "myText",
"sling:resourceType": "core/wcm/components/text/v2/text",
"text": "Hello World!"
}
E dato il markup seguente:
<div class="outer" data-sly-resource="${map}"></div>
È previsto il seguente output:
<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>