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’elemento del blocco data-sly-resource
può anche funzionare con Maps
o Records
. Con entrambi gli approcci, è necessario specificare la proprietà Stringa resourceName
. Il relativo valore viene utilizzato per creare una Risorsa sintetica che verrà 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
manca in questa mappa, come tipo di risorsa sarà considerato il valore dell’opzione espressione resourceType
oppure il tipo 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>