Sjablonen templates
Sjablonen worden op verschillende punten in AEM gebruikt:
-
wanneer u een pagina creeert, selecteert u een malplaatje . Deze sjabloon wordt gebruikt als basis voor de nieuwe pagina. Het malplaatje bepaalt de structuur van de pagina, om het even welke aanvankelijke inhoud, en de componenten die (ontwerpeigenschappen) kunnen worden gebruikt.
-
wanneer u een Fragment van de Inhoud creeert, selecteert u ook een malplaatje . Deze sjabloon definieert de structuur, initiële elementen en variaties.
De volgende sjablonen worden in detail besproken:
Sjablonen - Pagina's templates-pages
AEM biedt nu twee basistypen sjablonen voor het maken van pagina's:
Bewerkbare sjablonen editable-templates
Bewerkbare sjablonen worden nu beschouwd als aanbevolen werkwijzen voor het ontwikkelen met AEM.
De voordelen van bewerkbare sjablonen:
-
Kan worden gecreeerd en worden uitgegeven door uw auteurs.
-
Er zijn nu regels waarmee u het volgende kunt definiëren voor pagina's die met de sjabloon zijn gemaakt:
- de structuur
- de initiële inhoud
- inhoudsbeleid
-
Nadat de nieuwe pagina is gemaakt, wordt een dynamische verbinding onderhouden tussen de pagina en de sjabloon. Deze verbinding houdt in dat wijzigingen in de sjabloonstructuur worden weerspiegeld op alle pagina's die met die sjabloon worden gemaakt. Wijzigingen in de oorspronkelijke inhoud worden niet doorgevoerd.
-
Gebruikt het inhoudsbeleid (dat van de malplaatjeredacteur wordt uitgegeven) om de ontwerpeigenschappen (gebruikt niet de wijze van het Ontwerp binnen de paginaredacteur) voort te zetten.
-
Wordt opgeslagen onder
/conf -
Zie Bewerkbare Malplaatjes voor verdere informatie.
Statische sjablonen static-templates
Statische sjablonen:
- Moet door uw ontwikkelaars worden bepaald en worden gevormd.
- Het oorspronkelijke sjabloonsysteem van AEM dat voor veel versies beschikbaar was.
- Een statische sjabloon is een hiërarchie van knooppunten die dezelfde structuur heeft als de pagina die moet worden gemaakt, maar zonder daadwerkelijke inhoud.
- Wordt gekopieerd om de pagina te maken. Hierna bestaat geen dynamische verbinding.
- Gebruikt Wijze van het Ontwerp om ontwerpeigenschappen voort te zetten.
- Wordt opgeslagen onder
/apps - Zie Statische Malplaatjes voor verdere informatie.
Beschikbaarheid sjabloon template-availability
-
alleen de eigenschap
cq:allowedTemplates -
alleen in de hoofdmap van de site
/content/we-retail/jcr:contentallowedPaths, allowedParents en allowedChildren kunnen ook op de sjablonen worden geplaatst om geavanceerdere regels te definiëren. Nochtans, waar mogelijk, is het veel eenvoudiger om verdere cq:allowedTemplates eigenschappen op subsections van de plaats te bepalen als er een behoefte is om de toegestane malplaatjes verder te beperken.cq:allowedTemplates eigenschappen door een auteur op het Geavanceerde lusje van de Eigenschappen van de Pagina kunnen worden bijgewerkt. De andere malplaatjeeigenschappen kunnen niet worden bijgewerkt gebruikend (standaard) UI, zodat zou een ontwikkelaar nodig hebben om de regels en een codeplaatsing voor elke verandering te handhaven.Wanneer u een pagina maakt in de interface voor sitebeheer, is de lijst met beschikbare sjablonen afhankelijk van de locatie van de nieuwe pagina en de plaatsingsbeperkingen die in elke sjabloon zijn opgegeven.
De volgende eigenschappen bepalen of een sjabloon T wordt gebruikt voor een nieuwe pagina die als onderliggend item van pagina P moet worden geplaatst. Elk van deze eigenschappen is een tekenreeks met meerdere waarden die nul of meer reguliere expressies bevat die worden gebruikt voor overeenkomsten met paden:
-
De eigenschap
cq:allowedTemplatesvan dejcr:contentsubnode vanPof een voorouder vanP. -
De eigenschap
allowedPathsvanT. -
De eigenschap
allowedParentsvanT. -
De eigenschap
allowedChildrenvan de sjabloonP.
De evaluatie werkt als volgt:
-
De eerste niet-lege
cq:allowedTemplateseigenschap die wordt gevonden terwijl de paginahiërarchie oploopt, beginnend metP, komt overeen met het pad vanT. Als geen van de waarden overeenkomt, wordtTafgewezen. -
Als
Teen niet-legeallowedPathseigenschap heeft, maar geen van de waarden overeenkomen met het pad vanP, wordtTafgewezen. -
Als beide bovenstaande eigenschappen leeg of niet bestaan, wordt
Tafgewezen, tenzij het tot dezelfde toepassing behoort alsP.Tbehoort tot dezelfde toepassing alsPals en alleen als de naam van het tweede niveau van het pad vanTgelijk is aan de naam van het tweede niveau van het pad vanP. De sjabloon/apps/geometrixx/templates/foobehoort bijvoorbeeld tot dezelfde toepassing als de pagina/content/geometrixx. -
Als
Teen niet-legeallowedParentseigenschap heeft, maar geen van de waarden overeenkomen met het pad vanP, wordtTafgewezen. -
Als de sjabloon van
Peen niet-lege eigenschapallowedChildrenheeft, maar geen van de waarden overeenkomen met het pad vanT, wordtTafgewezen. -
In alle andere gevallen is
Ttoegestaan.
Het volgende diagram toont het sjabloonevaluatieproces:
Sjablonen beperken die worden gebruikt in onderliggende pagina's limiting-templates-used-in-child-pages
Als u wilt beperken welke sjablonen kunnen worden gebruikt om onderliggende pagina's onder een bepaalde pagina te maken, gebruikt u de eigenschap cq:allowedTemplates van het knooppunt jcr:content van de pagina om de lijst met sjablonen op te geven die als onderliggende pagina's moeten worden toegestaan. Elke waarde in de lijst moet een absoluut pad zijn naar een sjabloon voor een toegestane onderliggende pagina, bijvoorbeeld /apps/geometrixx/templates/contentpage .
U kunt de eigenschap cq:allowedTemplates op het knooppunt jcr:content van de sjabloon gebruiken om deze configuratie toe te passen op alle nieuwe pagina's die deze sjabloon gebruiken.
Als u meer beperkingen wilt toevoegen, bijvoorbeeld met betrekking tot de sjabloonhiërarchie, kunt u de eigenschappen allowedParents/allowedChildren op de sjabloon gebruiken. U kunt dan uitdrukkelijk specificeren dat de pagina's die van een malplaatjeT worden gecreeerd ouderpagina/kinderen van pagina's moeten zijn die van een malplaatjeT worden gecreeerd.
Sjablonen - Inhoudsfragmenten templates-content-fragments
Zie de Malplaatjes van het Fragment van de Inhoud .