AEM-Erweiterungen aem-extensions

Ähnlich wie die Apache Sling-Erweiterungen der HTL-Spezifikation bietet AEM einige zusätzliche Ausdrucksoptionen, die das Arbeiten mit AEM-Konzepten direkt in den HTL-Skripten etwas erleichtern.

i18n i18n

Die gleichen drei zusätzlichen Optionen wie in Apache Sling können zusammen mit i18n verwendet werden:

  • locale
  • hint
  • basename

In AEM wird die Internationalisierungsunterstützung für HTL jedoch mit Hilfe der API aus dem com.day.cq.i18n-Paket implementiert.

data-sly-include data-sly-include

In AEM kann data-sly-include eine zusätzliche Option wcmmode annehmen, die den WCM-Modus für das enthaltene Skript steuert. Die zulässigen Werte sind die Namen der verfügbaren Aufzählungskonstanten.

data-sly-resource data-sly-resource

Zusätzlich zu Pfaden und Resources kann das data-sly-resource-Blockelement auch mit Maps oder Records arbeiten. Bei beiden Ansätzen muss die Eigenschaft resourceName als Zeichenfolge angegeben werden. Ihr Wert wird verwendet, um eine synthetische Ressource zu erstellen, die in den Rendering-Kontext aufgenommen wird. Die restlichen Eigenschaften von Record oder Map, die an data-sly-resource übergeben wurden, werden als normale Resource-Eigenschaften verwendet. Wenn die Eigenschaft sling:resourceType in dieser Zuordnung fehlt, wird als Ressourcentyp entweder der Wert der resourceType-Ausdrucksoption oder der Ressourcentyp der aktuellen Ressource, die das Rendering steuert, angenommen.

Unter Berücksichtigung der folgenden Zuordnungs-/Datensatz-Eigenschaften, die im Skriptbereich als map verfügbar sind:

{
    resourceName: "myText",
    "sling:resourceType": "core/wcm/components/text/v2/text",
    "text": "Hello World!"
}

Und bei der folgenden Aufschlüsselung:

<div class="outer" data-sly-resource="${map}"></div>

Folgende Ausgabe wird erwartet:

<div class="outer">
    <div class="myText">
        <div data-cmp-data-layer="{&quot;text-e58d65c472&quot;:{&quot;@type&quot;:&quot;core/wcm/components/text/v2/text&quot;,&quot;xdm:text&quot;:&quot;<p>Hello world!</p>&quot;}}" id="text-e58d65c472" class="cmp-text">
            <p>Hello world!</p>
        </div>
  </div>
</div>
recommendation-more-help
86859df1-0285-4512-b293-0ef9cbea5ee8