Sjablonen templates
Sjablonen worden op verschillende punten in AEM gebruikt:
-
Wanneer een pagina maken die u nodig hebt om een sjabloon te selecteren; dit wordt gebruikt als basis voor de nieuwe pagina . De sjabloon definieert de structuur van de resulterende pagina, eventuele initiële inhoud en de componenten die kunnen worden gebruikt (ontwerpeigenschappen).
-
Wanneer een inhoudsfragment maken dat u ook moet selecteren. 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:
-
Zijn geïntroduceerd zodat 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. dit betekent dat wijzigingen in de sjabloonstructuur worden doorgevoerd 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.
-
worden opgeslagen onder
/conf -
Zie Bewerkbare sjablonen voor nadere informatie.
Statische sjablonen static-templates
Statische sjablonen:
- Moet door uw ontwikkelaars worden bepaald en worden gevormd.
- Dit was het oorspronkelijke sjabloonsysteem van AEM en is al in vele versies beschikbaar.
- 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 nieuwe pagina te maken. Hierna bestaat geen dynamische verbinding.
- Gebruiksmiddelen Ontwerpmodus om ontwerpeigenschappen te behouden.
- worden opgeslagen onder
/apps - Zie Statische sjablonen voor nadere informatie.
Beschikbaarheid sjabloon template-availability
-
alleen
cq:allowedTemplateseigenschap -
alleen in de hoofdmap van de site
/content/we-retail/jcr:contentallowedPaths, allowedParents, en allowedChildren kan ook op de malplaatjes worden geplaatst om verfijndere regels te bepalen. Waar mogelijk is het echter veel eenvoudiger te definiëren cq:allowedTemplates eigenschappen op subsecties van de site als de toegestane sjablonen verder moeten worden beperkt.cq:allowedTemplates eigenschappen kunnen door een auteur worden bijgewerkt in het dialoogvenster Geavanceerd tabblad van het dialoogvenster Pagina-eigenschappen. 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 nieuwe 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 mag worden gebruikt voor een nieuwe pagina die als onderliggend item van pagina moet worden geplaatst P. 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
cq:allowedTemplateseigendom van dejcr:contentsubknooppunt vanPof een voorouder vanP. -
De
allowedPathseigenschap vanT. -
De
allowedParentseigenschap vanT. -
De
allowedChildreneigenschap van de template vanP.
De evaluatie werkt als volgt:
-
De eerste niet-lege
cq:allowedTemplateseigenschap gevonden tijdens oplopende paginahiërarchie, beginnend metPkomt overeen met het pad vanT. Als geen van de waarden overeenkomt,Twordt verworpen. -
Indien
Theeft een niet-leegallowedPathseigenschap, maar geen van de waarden komt overeen met het pad vanP,Twordt verworpen. -
Als beide bovengenoemde eigenschappen leeg of niet bestaan,
Twordt afgewezen, tenzij het tot dezelfde aanvraag behoort alsP.Tbehoort tot dezelfde toepassing alsPals en alleen als de naam van het tweede niveau van het pad vanTis gelijk aan de naam van het tweede niveau van het pad vanP. De sjabloon/apps/geometrixx/templates/foobehoort tot dezelfde toepassing als de pagina/content/geometrixx. -
Indien
Theeft een niet-leegallowedParentseigenschap, maar geen van de waarden komt overeen met het pad vanP,Twordt verworpen. -
Indien de template van
Pheeft een niet-leegallowedChildreneigenschap, maar geen van de waarden komt overeen met het pad vanT,Twordt verworpen. -
In alle andere gevallen
Tis toegestaan.
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 opdracht cq:allowedTemplates eigenschap van jcr:content knooppunt van de pagina om de lijst op te geven met sjablonen die als onderliggende pagina's zijn 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 cq:allowedTemplates eigenschap op de sjabloon jcr:content knoop om deze configuratie toe te passen op alle pas gecreëerde pagina's die dit malplaatje gebruiken.
Als u meer beperkingen wilt toevoegen, bijvoorbeeld met betrekking tot de sjabloonhiërarchie, kunt u de opdracht allowedParents/allowedChildren eigenschappen op de sjabloon. 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 Sjablonen voor inhoudsfragmenten voor volledige informatie.