Seitenvorlagen

Beim Erstellen einer Seite müssen Sie eine Vorlage auswählen. Die Seitenvorlage wird als Basis für die neue Seite genutzt. Die Vorlage definiert die Struktur der Seite, anfängliche Inhalte und die Komponenten, die verwendet werden können (Design-Eigenschaften). Das hat mehrere Vorteile:

  • Seitenvorlagen sollen spezialisierten Autoren das Erstellen und Bearbeiten von Vorlagen ermöglichen.
    • Diese spezialisierten Autoren werden als Vorlagenautoren bezeichnet.
    • Vorlagenautoren müssen Mitglieder der Gruppe template-authors sein.
  • Seitenvorlagen behalten eine dynamische Verbindung zu allen damit erstellten Seiten bei. Dadurch wird sichergestellt, dass alle Änderungen an der Vorlage auf den Seiten widergespiegelt werden.
  • Seitenvorlagen gestalten die Seitenkomponente allgemeiner, damit die Seitenkernkomponente ohne Anpassung verwendet werden kann.

Mit Seitenvorlagen werden die Aspekte, die eine Seite bilden, innerhalb von Komponenten isoliert. Sie können die erforderlichen Komponentenkombinationen über eine Benutzeroberfläche konfigurieren. Damit entfällt die Notwendigkeit, für jede Seitenvariante eine neue Seitenkomponente zu entwickeln.

Dieses Dokument:

  • bietet einen Überblick über das Erstellen einer Seitenvorlage.
  • beschreibt die Administrator- bzw. Entwickleraufgaben, die zur Erstellung bearbeitbarer Vorlagen erforderlich sind.
  • beschreibt die technischen Grundlagen bearbeitbarer Vorlagen.
  • beschreibt, wie AEM die Verfügbarkeit einer Vorlage bewertet.
HINWEIS

Bei den in diesem Dokument beschriebenen Schritten wird vorausgesetzt, dass Sie bereits mit dem Erstellen und Bearbeiten von Vorlagen vertraut sind. Weitere Informationen finden Sie im Dokument Erstellen von Seitenvorlagen für Autoren, das detailliert beschreibt, welche Funktionen Vorlagenautoren mit bearbeitbaren Vorlagen zur Verfügung stehen.

TIPP

Das WKND-Tutorial erläutert die Verwendung von Seitenvorlagen durch Implementierung eines Beispiels und ist sehr nützlich, um zu verstehen, wie eine Vorlage in einem neuen Projekt eingerichtet wird.

Erstellen neuer Vorlagen

Seitenvorlagen werden von Vorlagenautoren in erster Linie mit der Vorlagenkonsole und dem Vorlageneditor erstellt. In diesem Abschnitt finden Sie einen Überblick über diesen Prozess, der anschließend aus technischer Perspektive beleuchtet wird.

Gehen Sie zum Erstellen einer neuen bearbeitbaren Vorlage wie folgt vor:

  1. Erstellen Sie einen Ordner für die Vorlagen. Dies ist zwar nicht unbedingt erforderlich, wird aber empfohlen.

  2. Wählen Sie einen Vorlagentyp aus. Dieser wird kopiert, um die Vorlagendefinition zu erstellen.

    HINWEIS

    Standardmäßig sind bereits diverse Vorlagen verfügbar. Bei Bedarf können Sie aber auch eigene Site-spezifische Vorlagentypen erstellen.

  3. Konfigurieren Sie die Struktur, die Inhaltsrichtlinien, den anfänglichen Inhalt und das Layout der neuen Vorlage.

    Struktur

    • Die Struktur ermöglicht es Ihnen, Komponenten und Inhalte für Ihre Vorlage zu definieren.
    • Komponenten, die in der Vorlagenstruktur definiert sind, können auf resultierenden Seiten nicht verschoben oder gelöscht werden.
    • Wenn Seitenautoren die Möglichkeit haben sollen, Komponenten hinzuzufügen und zu entfernen, fügen Sie der Vorlage ein Absatzsystem hinzu.
    • Komponenten lassen sich entsperren und erneut sperren, damit Sie den anfänglichen Inhalt definieren können.

    Einzelheiten dazu, wie Vorlagenautoren Strukturen definieren können, finden Sie unter Erstellen von Seitenvorlagen.

    Technische Details zur Struktur werden in diesem Dokument unter Struktur erläutert.

    Richtlinien

    • Die Richtlinien für Inhalte definieren die Design-Eigenschaften einer Komponente.

      • Zum Beispiel die verfügbaren Komponenten oder minimale/maximale Abmessungen.
    • Diese sind auf die Vorlage anwendbar (und auf Seiten, die mit der Vorlage erstellt wurden).

    Einzelheiten dazu, wie Vorlagenautoren Richtlinien definieren können, finden Sie unter Erstellen von Seitenvorlagen.

    Technische Details zu Richtlinien werden in diesem Dokument unter Inhaltsrichtlinien erläutert.

    Anfänglicher Inhalt

    • Der anfängliche Inhalt definiert Inhalt, der angezeigt wird, wenn eine Seite anfänglich auf Grundlage einer Vorlage erstellt wird.
    • Der anfängliche Inhalt kann dann von Seitenautoren bearbeitet werden.

    Einzelheiten dazu, wie Vorlagenautoren Strukturen definieren können, finden Sie unter Erstellen von Seitenvorlagen.

    Technische Details zu den Richtlinien werden in diesem Dokument unter Anfänglicher Inhalt erläutert.

    Layout

    • Sie können das Vorlagen-Layout für verschiedene Geräte definieren.
    • Responsives Layout funktioniert für Vorlagen ebenso wie für die Seitenbearbeitung.

    Einzelheiten dazu, wie Vorlagenautoren Vorlagen-Layouts definieren können, finden Sie unter Erstellen von Seitenvorlagen.

    Technische Details zu den Richtlinien werden in diesem Dokument unter Layout erläutert.

  4. Aktivieren Sie die Vorlage und lassen Sie ihre Verwendung dann für bestimmte Inhaltsbäume zu.

    • Eine Vorlage kann aktiviert oder deaktiviert werden, um sie für Vorlagenautoren verfügbar bzw. nicht verfügbar zu machen.
    • Eine Vorlage kann für bestimmte Seitenverzweigungen verfügbar oder nicht verfügbar gemacht werden.

    Einzelheiten dazu, wie Vorlagenautoren Vorlagen aktivieren können, finden Sie unter Erstellen von Seitenvorlagen.

    Technische Details zum Aktivieren von Vorlagen werden in diesem Dokument unter Aktivieren und Zulassen von Vorlagen erläutert.

  5. Verwenden Sie sie, um Inhaltsseiten zu erstellen.

    • Wenn Sie eine Vorlage zum Erstellen einer neuen Seite verwenden, ist kein Unterschied zwischen den statischen und bearbeitbaren Vorlagen ersichtlich.
    • Für die Seitenautoren ist der Prozess transparent.

    Einzelheiten dazu, wie Seitenautoren Vorlagen zum Erstellen von Seiten verwenden können, finden Sie unter Erstellen und Organisieren von Seiten.

    Technische Details zu den Richtlinien werden in diesem Dokument unter Resultierende Inhaltsseiten erläutert.

TIPP

Geben Sie in eine Vorlage nie Informationen ein, die internationalisiert werden müssen. Für die Internationalisierung werden die Lokalisierungsfunktionen der Hauptkomponenten empfohlen.

HINWEIS

Vorlagen sind leistungsstarke Tools zur Optimierung des Seitenerstellungs-Workflows. Allerdings können zu viele Vorlagen die Autoren überwältigen und das Erstellen von Seiten unübersichtlich machen. Eine gute Faustregel ist, die Anzahl der Vorlagen unter 100 zu halten.

Adobe empfiehlt, aufgrund möglicher Leistungsauswirkungen nicht mehr als 1.000 Vorlagen zu verwenden.

HINWEIS

Die Client-Bibliothek des Editors setzt voraus, dass der Namespace cq.shared in den Inhaltsseiten vorhanden ist. Wenn er nicht vorhanden ist, wird der JavaScript-Fehler Uncaught TypeError: Cannot read property 'shared' of undefined gemeldet.

Alle Beispielinhaltsseiten enthalten cq.shared, sodass jeglicher darauf basierender Inhalt automatisch cq.shared umfasst. Wenn Sie sich jedoch ganz neue eigene Inhaltsseiten erstellen möchten, die nicht auf Beispielinhalt basieren, müssen Sie sicherstellen, dass Sie den Namespace cq.shared einbinden.

Weitere Informationen finden Sie unter Verwendung Client-seitiger Bibliotheken.

Vorlagenordner

Zum Organisieren Ihrer Vorlagen können Sie die folgenden Ordner verwenden:

  • global
  • Site-spezifisch
HINWEIS

Obwohl Sie Ihre Ordner verschachteln können, werden sie den Benutzern in der Vorlagenkonsole als flache Struktur angezeigt.

In einer Standard-AEM-Instanz ist der Ordner global bereits in der Vorlagenkonsole vorhanden. Er enthält Standardvorlagen und dient als Ausweichlösung, wenn keine Richtlinien und/oder Vorlagentypen im aktuellen Ordner gefunden werden. Sie können Ihre Standardvorlagen entweder zu diesem Ordner hinzufügen oder aber einen neuen Ordner erstellen.

HINWEIS

Als Best Practice wird empfohlen, einen neuen Ordner für Ihre benutzerdefinierten Vorlagen zu erstellen und nicht den Ordner global zu verwenden.

VORSICHT

Ordner müssen von einem Benutzer mit admin-Rechten erstellt werden.

Arten von Vorlagen und Richtlinien werden gemäß der folgenden Rangordnung in allen Ordnern übernommen:

  1. der aktuelle Ordner
  2. dem aktuellen Ordner übergeordnete Elemente
  3. /conf/global
  4. /apps
  5. /libs

Eine Liste aller zulässigen Einträge wird erstellt. Wenn sich Konfigurationen (label/path) überschneiden, wird den Benutzern nur die Instanz angezeigt, die dem aktuellen Ordner am nächsten ist.

Zum Erstellen eines neuen Ordners stehen Ihnen die folgenden Optionen zur Auswahl:

Verwenden von CRXDE Lite

  1. Ein neuer Ordner (unter „/conf“) kann für Ihre Instanz entweder programmgesteuert oder mit CRXDE Lite erstellt werden.

    Nur die folgende Struktur darf verwendet werden:

    /conf
        <your-folder-name> [sling:Folder]
            settings [sling:Folder]
                wcm [cq:Page]
                    templates [cq:Page]
                    policies [cq:Page]
    
  2. Sie können die folgenden Eigenschaften des Ordnerstammknotens definieren:

    <your-folder-name> [sling:Folder]

    • Name: jcr:title
    • Typ: String
    • Wert: Der Titel (für den Ordner), der in der Vorlagen-Konsole angezeigt werden soll
  3. Zusätzlich zu den standardmäßigen Autorenprivilegien und -berechtigungen (z. B. content-authors) müssen Sie jetzt eine oder mehrere Gruppen zuweisen und die erforderlichen Zugriffsrechte (ACLs) definieren, damit Ihre Autoren in der Lage sind, Vorlagen im neuen Ordner zu erstellen.

    Die Gruppe template-authors ist die Standardgruppe, die zugewiesen werden muss. Weitere Informationen finden Sie im Abschnitt ACLs und Gruppen.

Verwenden des Konfigurations-Browsers

  1. Wechseln Sie zu Globale Navigation > Tools > Konfigurations-Browser.

    Die vorhandenen Ordner werden links aufgelistet, einschließlich des Ordners global.

  2. Klicken Sie auf Erstellen.

  3. Im Dialogfeld Konfiguration erstellen müssen die folgenden Felder konfiguriert werden:

    • Titel: Geben Sie einen Titel für den Konfigurationsordner ein.
    • Bearbeitbare Vorlagen: Aktivieren Sie dieses Kontrollkästchen, um bearbeitbare Vorlagen in diesem Ordner zuzulassen.
  4. Klicken Sie auf Erstellen.

HINWEIS

Im Konfigurations-Browser können Sie den Ordner „global“ bearbeiten und die Option Bearbeitbare Vorlagen aktivieren, wenn Sie in diesem Ordner Vorlagen erstellen möchten. Davon ist jedoch abzuraten.

ACLs und Gruppen

Sobald Ihre Vorlagenordner erstellt sind (entweder über CRXDE oder den Konfigurations-Browser), müssen ACLs für die entsprechenden Gruppen für die Vorlagenordner definiert werden, um ein angemessenes Maß an Sicherheit zu gewährleisten.

Die Vorlagenordner für das WKND-Tutorial können als Beispiel herangezogen werden.

Die Gruppe „template-authors“

Die Gruppe template-authors ist die Gruppe zum Verwalten des Zugriffs auf Vorlagen und standardmäßig in AEM integriert. Sie ist aber leer. Benutzer müssen der Gruppe für das Projekt bzw. die Site hinzugefügt werden.

VORSICHT

Die Gruppe template-authors ist nur für Benutzer, die die Möglichkeit haben müssen, neue Vorlagen zu erstellen.

Das Bearbeiten von Vorlagen hat weitreichende Auswirkungen und bei nicht ordnungsgemäßem Vorgehen können vorhandene Vorlagen beschädigt werden. Daher sollte diese Rolle zielgerichtet und nur qualifizierten Benutzer zugewiesen werden.

In der folgenden Tabelle sind die erforderlichen Berechtigungen für die Bearbeitung von Vorlagen aufgeführt.

Pfad Rolle/Gruppe Berechtigungen
Beschreibung
/conf/<your-folder>/settings/wcm/templates Vorlagenautoren
lesen, schreiben, replizieren Vorlagenautoren, die Vorlagen im Site-spezifischen /conf-Raum erstellen, lesen, aktualisieren, löschen und replizieren
Anonymer Web-Anwender lesen Anonymer Web-Anwender muss Vorlagen beim Rendern einer Seite lesen
Autoren von Inhalten replizieren replicateContent-Autoren müssen beim Aktivieren einer Seite die Vorlagen einer Seite aktivieren
/conf/<your-folder>/settings/wcm/policies Template Author lesen, schreiben, replizieren Vorlagenautoren, die Vorlagen im Site-spezifischen /conf-Raum erstellen, lesen, aktualisieren, löschen und replizieren
Anonymer Web-Anwender lesen Anonymer Web-Anwender muss beim Rendern einer Seite Richtlinien lesen
Autoren von Inhalten replizieren Inhaltsautoren müssen beim Aktivieren einer Seite die Richtlinien einer Vorlage aktivieren
/conf/<site>/settings/template-types Vorlagenautor lesen Der Vorlagenautor erstellt eine neue Vorlage basierend auf einem der vordefinierten Vorlagentypen.
Anonymer Web-Anwender keine Anonymer Web-Anwender darf nicht auf die Vorlagentypen zugreifen

Diese standardmäßige template-authors-Gruppe umfasst nur die Projekteinstellungen, bei denen alle Mitglieder von template-authors auf alle Vorlagen zugreifen und diese erstellen dürfen. Für komplexere Setups, bei denen mehrere Vorlagenautorengruppen benötigt werden, um einen getrennten Zugriff auf Vorlagen zu ermöglichen, müssen weitere benutzerdefinierte Vorlagenautorengruppen erstellt werden. Die Berechtigungen für die Vorlagenautorengruppen bleiben dabei jedoch dieselben.

Vorlagentyp

Beim Erstellen einer neuen Vorlage müssen Sie einen Vorlagentyp angeben:

  • Vorlagentypen stellen quasi Vorlagen für eine Vorlage bereit. Beim Erstellen einer neuen Vorlage wird die Struktur und der anfängliche Inhalt des gewählten Vorlagentyps verwendet, um die neue Vorlage zu erstellen.

    • Der Vorlagentyp wird zum Erstellen der Vorlage kopiert.
    • Nach Abschluss des Kopiervorgangs ist die einzige Verbindung zwischen der Vorlage und dem Vorlagentyp ein statischer Verweis zu Informationszwecken.
  • Vorlagentypen ermöglichen es Ihnen, Folgendes zu definieren:

    • Den Ressourcentyp der Seitenkomponente.
    • Die Richtlinie des Stammknotens, die die im Vorlageneditor zulässigen Komponenten definiert.
    • Es wird empfohlen, die Haltepunkte für das responsive Raster und das Setup des Emulators für mobile Geräte über den Vorlagentyp zu definieren.
  • AEM stellt einige vordefinierte Vorlagentypen wie HTML5-Seiten und Seiten mit adaptivem Formular bereit.

  • Vorlagentypen werden in der Regel von Entwicklern definiert.

Die vordefinierten Vorlagentypen werden unter dem folgenden Pfad gespeichert:

  • /libs/settings/wcm/template-types
VORSICHT

Sie dürfen keinerlei Änderungen im Pfad /libs vornehmen. Dies liegt daran, dass der Inhalt von /libs jederzeit durch ein Update in AEM überschrieben werden kann.

Ihre Site-spezifischen Vorlagentypen sollten an einer mit dem folgenden Pfad vergleichbaren Stelle gespeichert werden:

  • /apps/settings/wcm/template-types

Definitionen für Ihre benutzerdefinierten Vorlagentypen sollten in benutzerdefinierten Ordnern (empfohlen) oder alternativ im Ordner global gespeichert werden. Beispiel:

  • /conf/<my-folder-01>/<my-folder-02>/settings/wcm/template-types
  • /conf/<my-folder>/settings/wcm/template-types
  • /conf/global/settings/wcm/template-types
VORSICHT

Die Vorlagentypen müssen die korrekte Ordnerstruktur aufweisen (also /settings/wcm/...), sonst werden die Vorlagentypen nicht gefunden.

Erstellen von Vorlagentypen

Wenn Sie eine Vorlage erstellt haben, die als Grundlage für andere Vorlagen dienen kann, können Sie diese Vorlage als Vorlagentyp kopieren.

  1. Erstellen Sie eine Vorlage wie andere bearbeitbare Vorlagen auch, wie hier dokumentiert. Diese dient dann als Grundlage für Ihren Vorlagentyp.
  2. Kopieren Sie mit CRXDE Lite die neu erstellte Vorlage aus dem Knoten templates in den Knoten template-types unter dem Vorlagenordner.
  3. Löschen Sie die Vorlage aus dem Knoten templates unter dem Vorlagenordner.
  4. Löschen Sie in der Kopie der Vorlage, die sich unter dem Knoten template-types befindet, alle cq:template-, cq:templateType- und jcr:content-Eigenschaften.

Sie können auch Ihren eigenen Vorlagentyp entwickeln, indem Sie eine bearbeitbare Beispielvorlage von GitHub als Grundlage verwenden.

CODE AUF GITHUB

Den Code dieser Seite finden Sie auf GitHub.

Vorlagendefinitionen

Definitionen für bearbeitbare Vorlagen werden in benutzerdefinierten Ordnern (empfohlen) oder alternativ im Ordner global gespeichert. Beispiel:

  • /conf/<my-folder>/settings/wcm/templates
  • /conf/<my-folder-01>/<my-folder-02>/settings/wcm/templates
  • /conf/global/settings/wcm/templates

Der Stammknoten der Vorlage weist den Typ cq:Template und das folgende Strukturgerüst auf:

<template-name>
  initial
    jcr:content
      root
        <component>
        ...
        <component>
  jcr:content
    @property status
  policies
    jcr:content
      root
        @property cq:policy
        <component>
          @property cq:policy
        ...
        <component>
          @property cq:policy
  structure
    jcr:content
      root
        <component>
        ...
        <component>
      cq:responsive
        breakpoints
  thumbnail.png

Die Hauptelemente sind:

  • <template-name>

    • [initial](#initial-content)
    • jcr:content
    • [structure](#structure)
    • [policies](#policies)
    • thumbnail.png

jcr:content

Dieser Knoten enthält Eigenschaften für die Vorlage:

  • Name: jcr:title
  • Name: status
    • Typ: String
    • Wert: draft, enabled oder disabled

Struktur

Definiert die Struktur der resultierenden Seite:

  • Sie wird beim Erstellen einer neuen Seite mit dem anfänglichen Inhalt (/initial) zusammengeführt.

  • Änderungen an der Struktur werden bei allen mit der Vorlage erstellten Seiten berücksichtigt.

  • Der Knoten root (structure/jcr:content/root) definiert die Liste der Komponenten, die auf der resultierenden Seite verfügbar sein werden.

    • Komponenten, die in der Vorlagenstruktur definiert sind, können in resultierenden Seiten nicht verschoben oder gelöscht werden.
    • Sobald eine Komponente entsperrt ist, wird die Eigenschaft editable auf true festgelegt.
    • Sobald eine Komponente, die bereits Inhalt enthält, entsperrt ist, wird dieser Inhalt in die Verzweigung initial verschoben.
  • Der Knoten cq:responsive enthält Definitionen für das responsive Layout.

Anfänglicher Inhalt

Definiert den anfänglichen Inhalt, den eine neue Seite bei Erstellung enthält:

  • Er enthält einen Knoten jcr:content, der auf alle neue Seiten kopiert wird.
  • Er wird beim Erstellen einer neuen Seite mit der Struktur (/structure) zusammengeführt.
  • Vorhandene Seiten werden nicht aktualisiert, wenn der anfängliche Inhalt nach der Erstellung geändert wird.
  • Der Knoten root enthält eine Liste von Komponenten, mit denen festgelegt wird, was auf der resultierenden Seite verfügbar sein soll.
  • Wird einer Komponente im Strukturmodus Inhalt hinzugefügt und wird diese Komponente anschließend entsperrt (oder umgekehrt), so wird dieser Inhalt als anfänglicher Inhalt verwendet.

Layout

Beim Bearbeiten einer Vorlage können Sie das Layout definieren. Dabei wird das standardmäßige responsive Layout verwendet.

Inhaltsrichtlinien

Die Richtlinien für Inhalte definieren die Design-Eigenschaften einer Komponente. Zum Beispiel die verfügbaren Komponenten oder minimale/maximale Abmessungen. Diese sind auf die Vorlage anwendbar (und auf Seiten, die mit der Vorlage erstellt wurden). Inhaltsrichtlinien können mit dem Vorlageneditor erstellt und ausgewählt werden.

  • Die Eigenschaft cq:policy im Knoten root
    /conf/<your-folder>/settings/wcm/templates/<your-template>/policies/jcr:content/root
    Stellt einen relativen Verweis auf die Inhaltsrichtlinie für das Absatzsystem der Seite bereit.

  • Die Eigenschaft cq:policy der komponentenexpliziten Knoten unter root stellt Links zu den Richtlinien für die einzelnen Komponenten bereit.

  • Die tatsächlichen Richtliniendefinitionen werden gespeichert unter:
    /conf/<your-folder>/settings/wcm/policies/wcm/foundation/components

HINWEIS

Die Pfade der Richtliniendefinitionen sind vom Pfad der Komponente abhängig. cq:policy enthält einen relativen Verweis auf die Konfiguration selbst.

Seitenrichtlinien

Seitenrichtlinien ermöglichen es, die Inhaltsrichtlinie für die Seite (Hauptabsatzsystem) entweder in der Vorlage oder den resultierenden Seiten zu definieren.

Aktivieren und Zulassen einer Vorlage

  1. Aktivieren Sie die Vorlage.

    Bevor eine Vorlage verwendet werden kann, muss sie auf eine der folgenden Weisen aktiviert werden:

    • Durch Aktivieren der Vorlage über die Vorlagenkonsole

    • Durch Festlegen der Statuseigenschaft des Knotens jcr:content

      • Zum Beispiel unter:

        /conf/<your-folder>/settings/wcm/templates/<your-template>/jcr:content

      • die Eigenschaft:

        • Name: status
        • Typ: String
        • Wert: enabled
  2. Zugelassene Vorlagen

    /conf/<your-folder>/settings/wcm/templates/.*

Resultierende Inhaltsseiten

Für Seiten, die anhand bearbeitbarer Vorlagen erstellt wurden, gilt Folgendes:

  • Sie werden mit einer Unterbaumstruktur erstellt, die aus structure und initial in der Vorlage zusammengeführt wird.

  • Sie enthalten Verweise auf Informationen, die in der Vorlage und im Vorlagentyp enthalten sind. Dies wird mithilfe des Knotens jcr:content mit den folgenden Eigenschaften erreicht:

    • cq:template – Stellt den dynamischen Verweis auf die aktuelle Vorlage bereit und ermöglicht es, Änderungen an der Vorlage auf den aktuellen Seiten widerzuspiegeln.

    • cq:templateType – Stellt einen Verweis auf den Vorlagentyp bereit.

Wie Vorlagen, Inhalte und Komponenten zusammenhängen

Das obige Diagramm veranschaulicht, wie Vorlagen, Inhalte und Komponenten zusammenhängen:

  • Controller – /content/<my-site>/<my-page> – Die resultierende Seite, die auf die Vorlage verweist. Der Inhalt steuert den gesamten Prozess. Gemäß den Definitionen greift er auf die entsprechenden Vorlagen und Komponenten zu.
  • Konfiguration – /conf/<my-folder>/settings/wcm/templates/<my-template> – Die Vorlage und zugehörigen Inhaltsrichtlinien definieren die Seitenkonfiguration.
  • Modell – OSGi-Bundles – Die OSGi-Bundles implementieren die Funktionalität.
  • Ansicht – /apps/<my-site>/components – Sowohl in der Autoren- als auch in der Veröffentlichungsumgebung wird der Inhalt durch Komponenten gerendert.

Beim Rendern einer Seite:

  • Vorlagen:

    • Es wird ein Verweis auf die Eigenschaft cq:template ihres Knotens jcr:content erstellt, um auf die Vorlage zuzugreifen, die dieser Seite entspricht.
  • Komponenten:

    • Die Seitenkomponente führt den Baum structure/jcr:content der Vorlage mit dem Baum jcr:content der Seite zusammen.
      • Die Seitenkomponente gestattet es dem Autor, nur die Knoten der Vorlagenstruktur zu bearbeiten, die als bearbeitbar gekennzeichnet sind (sowie jegliche untergeordneten Elemente).
      • Beim Rendern einer Komponente auf einer Seite wird der relative Pfad dieser Komponente vom Knoten jcr:content übernommen. Derselbe Pfad unter dem Knoten policies/jcr:content der Vorlage wird dann durchsucht.
        • Die Eigenschaft cq:policy dieses Knotens verweist auf die eigentliche Inhaltsrichtlinie (d. h. sie enthält die Design-Konfiguration für diese Komponente).
          • Auf diese Weise können Sie mehrere Vorlagen nutzen, die dieselben Inhaltsrichtlinienkonfigurationen wiederverwenden.

Verfügbarkeit der Vorlage

Beim Erstellen einer neuen Seite in der Website-Admin-Oberfläche hängt die Liste der verfügbaren Vorlagen vom Speicherort der neuen Seite und den in den einzelnen Vorlagen angegebenen Platzierungsbeschränkungen ab.

Die folgenden Eigenschaften bestimmen, ob eine Vorlage T für eine neue Seite verwendet werden darf, die der Seite P untergeordnet platziert werden kann. Jede dieser Eigenschaften ist eine mehrwertige Zeichenfolge, welche null oder mehrere reguläre Ausdrücke enthält, die für die Übereinstimmung mit Pfaden verwendet werden:

  • Die Eigenschaft cq:allowedTemplates des Unterknotens jcr:content von P oder ein Vorgänger von P.

  • Die allowedPaths-Eigenschaft von T.

  • Die allowedParents-Eigenschaft von T.

  • Die allowedChildren-Eigenschaft der Vorlage von P.

Die Bewertung funktioniert wie folgt:

  • Die erste nicht leere Eigenschaft cq:allowedTemplates, die beim Aufrufen der mit P beginnenden Seitenhierarchie gefunden wird, wird mit dem Pfad von T abgeglichen. Wenn keiner der Werte übereinstimmt, wird T abgelehnt.

  • Wenn T eine nicht leere allowedPaths-Eigenschaft hat, aber keiner der Werte mit dem Pfad von P übereinstimmt, wird T zurückgewiesen.

  • Wenn beide oben genannten Eigenschaften entweder leer oder nicht vorhanden sind, wird T abgelehnt, es sei denn, es gehört zum selben Programm wie P. T gehört genau dann zum selben Programm wie P, wenn der Name der zweiten Ebene des Pfades von T mit dem Namen der zweiten Ebene des Pfades von P übereinstimmt. Zum Beispiel gehört die Vorlage /apps/wknd/templates/foo zum selben Programm wie die Seite /content/wknd.

  • Wenn T eine nicht leere allowedParents-Eigenschaft hat, aber keiner der Werte mit dem Pfad von P übereinstimmt, wird T zurückgewiesen.

  • Wenn die Vorlage von P eine nicht leere allowedChildren-Eigenschaft hat, aber keiner der Werte mit dem Pfad von T übereinstimmt, wird T zurückgewiesen.

  • In allen anderen Fällen ist T zulässig.

Das folgende Diagramm zeigt den Vorlagenauswertungsprozess:

Verfahren zur Vorlagenauswertung

VORSICHT

AEM bietet verschiedene Eigenschaften zur Steuerung der unter Sites zulässigen Vorlagen. Eine Kombination daraus kann jedoch zu komplexen Regeln führen, die sich nur schwer verfolgen und verwalten lassen.

Daher empfiehlt Adobe, einfach anzufangen, indem Sie Folgendes definieren:

  • nur die cq:allowedTemplates-Eigenschaft

  • nur im Site-Stamm

Ein Beispiel finden Sie im Inhalt des WKND-Tutorials: /content/wknd/jcr:content

Außerdem können die Eigenschaften allowedPaths, allowedParents und allowedChildren in den Vorlagen platziert werden, um komplexere Regeln zu definieren. Es ist jedoch nach Möglichkeit deutlich einfacher, in Unterabschnitten der Site weitere cq:allowedTemplates-Eigenschaften zu definieren, wenn die zulässigen Vorlagen weiter eingeschränkt werden sollen.

Ein weiterer Vorteil besteht darin, dass die cq:allowedTemplates-Eigenschaften von einem Autor auf der Registerkarte Erweitert der Seiteneigenschaften aktualisiert werden können. Die anderen Vorlageneigenschaften können nicht über die (standardmäßige) Benutzeroberfläche aktualisiert werden. Dafür wird ein Entwickler benötigt, der die Regeln und Code-Implementierung für jede Änderung pflegt.

Einschränkende Vorlagen in untergeordneten Seiten

Um zu begrenzen, welche Vorlagen zum Erstellen von untergeordneten Seiten unter einer bestimmten Seite verwendet werden können, verwenden Sie die Eigenschaft cq:allowedTemplates des Knotens jcr:content auf der Seite. Damit lässt sich die Liste der Vorlagen angeben, die als untergeordnete Seiten zulässig sein sollen. Jeder Wert in der Liste muss ein absoluter Pfad zu einer Vorlage für eine zulässige untergeordnete Seite sein, zum Beispiel /apps/wknd/templates/page-content.

Sie können die Eigenschaft cq:allowedTemplates im Knoten jcr:content der Vorlage verwenden, damit diese Konfiguration auf alle neu erstellten Seiten angewendet wird, die diese Vorlage nutzen.

Wenn Sie mehrere Einschränkungen hinzufügen möchten, z. B. bezüglich der Vorlagenhierarchie, können Sie die Eigenschaften allowedParents/allowedChildren auf der Vorlage verwenden. Sie können dann explizit angeben, dass Seiten, die aus einer Vorlage T erstellt wurden, übergeordnet/untergeordnet von Seiten sein müssen, die aus einer Vorlage T erstellt wurden.

Auf dieser Seite

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now