Paginasjablonen - statisch page-templates-static

CAUTION
AEM 6.4 heeft het einde van de uitgebreide ondersteuning bereikt en deze documentatie wordt niet meer bijgewerkt. Raadpleeg voor meer informatie onze technische ondersteuningsperioden. Ondersteunde versies zoeken hier.

Een malplaatje wordt gebruikt om een Pagina tot stand te brengen en bepaalt welke componenten binnen het geselecteerde werkingsgebied kunnen worden gebruikt. Een sjabloon is een hiërarchie van knooppunten die dezelfde structuur heeft als de pagina die moet worden gemaakt, maar zonder daadwerkelijke inhoud.

Elke sjabloon bevat een selectie van componenten die beschikbaar zijn voor gebruik.

  • Sjablonen zijn samengesteld uit Componenten;
  • Componenten gebruiken widgets en staan toegang tot deze widgets toe. Deze worden gebruikt om de inhoud te renderen.
NOTE
Bewerkbare sjablonen zijn ook beschikbaar en zijn het aanbevolen type sjablonen voor de meeste flexibiliteit en de nieuwste functies.

Eigenschappen en onderliggende knooppunten van een sjabloon properties-and-child-nodes-of-a-template

Een sjabloon is een knooppunt van het type cq:Template en heeft de volgende eigenschappen en onderliggende knooppunten:

Naam
Type
Beschrijving
.
cq:sjabloon
Huidige sjabloon. Een sjabloon is van het knooppunttype cq:Template.
allowedChildren
String[]
Pad van een sjabloon dat een onderliggend element van deze sjabloon mag zijn.
allowedParents
String[]
Pad van een sjabloon dat bovenliggend element van deze sjabloon mag zijn.
allowedPaths
String[]
Pad van een pagina die mag worden gebaseerd op deze sjabloon.
jcr:gemaakt
Datum
Datum waarop de sjabloon is gemaakt.
jcr:beschrijving
String
Beschrijving van de sjabloon.
jcr:titel
String
Titel van de sjabloon.
rangschikking
Lang
Rank van de sjabloon. Wordt gebruikt om de sjabloon weer te geven in de gebruikersinterface.
jcr:inhoud
cq:PageContent
Knooppunt met de inhoud van de sjabloon.
thumbnail.png
nt:bestand
Miniatuur van de sjabloon.
icon.png
nt:bestand
Pictogram van de sjabloon.

Een sjabloon is de basis van een pagina.

Als u een pagina wilt maken, moet de sjabloon worden gekopieerd (node-tree) /apps/<myapp>/template/<mytemplate>) op de corresponderende positie in de sitestructuur: dit gebeurt als een pagina wordt gemaakt met de Websites tab.

Deze kopieeractie geeft de pagina ook zijn aanvankelijke inhoud (gewoonlijk Top-Level Inhoud slechts) en het bezit die:resourceType, de weg aan de paginacomponent plaatsen die wordt gebruikt om de pagina (alles in de kindknoop jcr:content) terug te geven.

Hoe sjablonen zijn gestructureerd how-templates-are-structured

Er zijn twee aspecten die in overweging moeten worden genomen:

  • de structuur van de template zelf
  • de structuur van de inhoud die wordt geproduceerd wanneer een sjabloon wordt gebruikt

De structuur van een sjabloon the-structure-of-a-template

Een malplaatje wordt gecreeerd onder een knoop van type cq:sjabloon.

screen_shot_2012-02-13at63646pm

Er kunnen verschillende eigenschappen worden ingesteld, met name:

  • jcr:titel - titel van de template; wordt weergegeven in het dialoogvenster wanneer u een pagina maakt.
  • jcr:beschrijving - beschrijving van het model; wordt weergegeven in het dialoogvenster wanneer u een pagina maakt.

Dit knooppunt bevat een knooppunt jcr:content (cq:PageContent) dat wordt gebruikt als basis voor het inhoudsknooppunt van de resulterende pagina's; deze verwijzingen, gebruikend sling:resourceType, de component die voor het teruggeven van de daadwerkelijke inhoud van een nieuwe pagina moet worden gebruikt.

screen_shot_2012-02-13at64010pm

Deze component wordt gebruikt om de structuur en het ontwerp van de inhoud te bepalen wanneer een nieuwe pagina wordt gecreeerd.

screen_shot_2012-02-13at64137pm

De inhoud die door een sjabloon wordt geproduceerd the-content-produced-by-a-template

Sjablonen worden gebruikt om pagina's van het type te maken cq:Page (zoals eerder vermeld, is een pagina een speciaal type component). Elke AEM pagina heeft een gestructureerd knooppunt jcr:content. Dit:

  • is van het type cq:PageContent
  • is een gestructureerd knooppunttype dat een bepaalde content-definition bezit
  • heeft een eigenschap sling:resourceType verwijzen naar de component met de slingerscripts die worden gebruikt voor het renderen van de inhoud

Standaardsjablonen default-templates

AEM wordt geleverd met een aantal standaardsjablonen die in het vak beschikbaar zijn. In sommige gevallen wilt u de sjablonen wellicht ongewijzigd gebruiken. In dat geval moet u ervoor zorgen dat de sjabloon beschikbaar is voor uw website.

AEM wordt bijvoorbeeld geleverd met verschillende sjablonen, waaronder een inhoudspagina en een homepage.

Titel
Component
Locatie
Doel
Startpagina
homepage
geometrixx
De sjabloon voor de startpagina van Geometrixx.
Inhoudspagina
contentpagina
geometrixx
De sjabloon voor de inhoudspagina van Geometrixx.

Standaardsjablonen weergeven displaying-default-templates

Ga als volgt te werk om een lijst met alle sjablonen in de repository weer te geven:

  1. Open in CRXDE Lite de Gereedschappen menu en klik op Query.

  2. Op het tabblad Query

  3. Als Type, selecteert u XPath.

  4. In de Query invoerveld, voer de volgende tekenreeks in:

    //element(*, cq:Sjabloon)

  5. Klikken Uitvoeren. De lijst wordt weergegeven in het vak Resultaat.

In de meeste gevallen neemt u een bestaande sjabloon en ontwikkelt u een nieuwe sjabloon voor eigen gebruik. Zie Paginasjablonen ontwikkelen voor meer informatie .

Als u een bestaande sjabloon wilt inschakelen voor uw website, moet deze worden weergegeven in het dialoogvenster Pagina maken een pagina maken onder Websites van de Websites console, plaats het allowedPaths bezit van de malplaatjeknoop aan: /content(https://experienceleague.adobe.com/.&last;?lang=nl)?

Hoe sjabloonontwerpen worden toegepast how-template-designs-are-applied

Wanneer stijlen in de gebruikersinterface worden gedefinieerd met Ontwerpmodus, blijft het ontwerp bestaan op het exacte pad van het inhoudsknooppunt waarvoor de stijl wordt gedefinieerd.

CAUTION
Adobe raadt u alleen aan ontwerpen toe te passen via Ontwerpmodus.
Het aanpassen van ontwerpen in bijvoorbeeld CRX DE is geen goede praktijk en de toepassing van dergelijke ontwerpen kan van verwacht gedrag variëren.

Als ontwerpen alleen worden toegepast in de ontwerpmodus, gelden de volgende secties: Resolutie ontwerppad, Beslissingsboomen de Voorbeeld niet van toepassing zijn.

NOTE
In deze sectie wordt het gedrag van de ontwerppadresolutie vanaf AEM 6.4.2.0 beschreven.

Resolutie ontwerppad design-path-resolution

Wanneer het teruggeven van inhoud die op een statisch malplaatje wordt gebaseerd, AEM zal proberen om het meest relevante ontwerp en de stijlen op de inhoud toe te passen die op een traversal van de inhoudshiërarchie wordt gebaseerd.

AEM bepaalt de meest relevante stijl voor een inhoudsknoop in de volgende orde:

  • Als er een ontwerp is voor het volledige en nauwkeurige pad van het inhoudsknooppunt (zoals wanneer het ontwerp is gedefinieerd in de ontwerpmodus), gebruikt u dat ontwerp.
  • Als er een ontwerp is voor het inhoudsknooppunt van het bovenliggende element, gebruikt u dat ontwerp.
  • Als er een ontwerp voor om het even welke knoop op de weg van de inhoudsknoop is, dan gebruik dat ontwerp.

In de laatste twee gevallen, als er meer dan één toepasselijk ontwerp is, gebruik het één dichtst bij de inhoudsknoop.

Beslissingsboom decision-tree

Dit is een grafische voorstelling van de Resolutie ontwerppad logica.

design_path_resolution

Voorbeeld example

U kunt een eenvoudige inhoudsstructuur als volgt gebruiken, waarbij een ontwerp van toepassing kan zijn op elk van de knooppunten:

/root/branch/leaf

In de volgende tabel wordt beschreven hoe AEM een ontwerp kiest.

Ontwerp zoeken voor
Ontwerpen bestaan voor
Element gekozen
Opmerking
leaf

root

branch

leaf

leaf
De meest nauwkeurige gelijke wordt altijd genomen.
leaf

root

branch

branch
Ga terug naar de dichtstbijzijnde match onder in de boom.
leaf
root
root
Als al het andere faalt, neem wat blijft.
branch
branch
branch
branch

branch

leaf

branch
branch

root

branch

branch
branch

root

leaf

root

Als er geen exacte overeenkomst is, neemt u de onderste in de boom.

Men gaat ervan uit dat dit altijd van toepassing zal zijn, maar verder naar boven kan de boom te specifiek zijn.

Paginasjablonen ontwikkelen developing-page-templates

AEM paginasjablonen zijn gewoon modellen waarmee nieuwe pagina's worden gemaakt. Zij kunnen zo weinig, of zo veel, aanvankelijke inhoud bevatten zoals nodig, hun rol om de correcte aanvankelijke knoopstructuren tot stand te brengen, met de vereiste eigenschappen (hoofdzakelijk sling:resourceType) die worden geplaatst om het uitgeven en het teruggeven toe te staan.

Een nieuwe sjabloon maken (op basis van een bestaande sjabloon) creating-a-new-template-based-on-an-existing-template

Een nieuwe sjabloon kan natuurlijk helemaal vanaf het begin worden gemaakt, maar vaak wordt een bestaande sjabloon gekopieerd en bijgewerkt om tijd en moeite te besparen. U kunt bijvoorbeeld de sjablonen in Geometrixx gebruiken om aan de slag te gaan.

Een nieuwe sjabloon maken op basis van een bestaande sjabloon:

  1. Kopieer een bestaande sjabloon (bij voorkeur met een definitie die zo dicht mogelijk bij wat u wilt bereiken) naar een nieuw knooppunt.

    Sjablonen worden meestal opgeslagen in /apps/<website-name>/templates/<template-name>.

    note note
    NOTE
    De lijst met beschikbare sjablonen is afhankelijk van de locatie van de nieuwe pagina en de plaatsingsbeperkingen die in elke sjabloon zijn opgegeven. Zie Beschikbaarheid sjabloon.
  2. Wijzig de jcr:titel van het nieuwe sjabloonknooppunt om de nieuwe rol ervan te weerspiegelen. U kunt ook de jcr:beschrijving in voorkomend geval. Zorg ervoor dat u de sjabloonbeschikbaarheid van de pagina naar wens wijzigt.

    note note
    NOTE
    Als u de sjabloon wilt weergeven in het dialoogvenster Pagina maken een pagina maken onder Websites van de Websites console, stelt de allowedPaths eigenschap van het sjabloonknooppunt naar: /content(/.*)?

    chlimage_1-251

  3. Kopieer de component waarop de sjabloon is gebaseerd (dit wordt aangegeven door de sling:resourceType eigendom van de jcr:inhoud in de sjabloon) om een nieuwe instantie te maken.

    Componenten worden meestal opgeslagen in /apps/<website-name>/components/<component-name>.

  4. Werk de jcr:titel en jcr:beschrijving van de nieuwe component.

  5. Vervang de miniatuur.png als u een nieuwe miniatuurafbeelding wilt weergeven in de lijst met sjabloonselecties (grootte 128 x 98 px).

  6. Werk de sling:resourceType van de template jcr:inhoud knooppunt om naar de nieuwe component te verwijzen.

  7. Breng verdere wijzigingen aan in de functionaliteit of het ontwerp van de sjabloon en/of de onderliggende component.

    note note
    NOTE
    Wijzigingen aangebracht in de /apps/<website>/templates/<template-name> knoop zal het malplaatjegeval beïnvloeden (zoals in de selectielijst).
    Wijzigingen aangebracht in de /apps/<website>/components/<component-name> de knoop zal de inhoudspagina beïnvloeden die wordt gecreeerd wanneer het malplaatje wordt gebruikt.

    U kunt nu een pagina binnen uw website maken met de nieuwe sjabloon.

NOTE
In de clientbibliotheek van de editor wordt ervan uitgegaan dat de editor cq.shared naamruimte in inhoudspagina's en als deze ontbreekt, de JavaScript-fout Uncaught TypeError: Cannot read property 'shared' of undefined resulteert.
Alle pagina's met voorbeeldinhoud bevatten cq.shared, dus alle inhoud die erop is gebaseerd, omvat automatisch cq.shared. Als u echter besluit zelf inhoudspagina's te maken zonder deze op voorbeeldinhoud te baseren, moet u ervoor zorgen dat u de cq.shared naamruimte.
Zie Client-Side bibliotheken gebruiken voor nadere informatie.

Een bestaande sjabloon beschikbaar maken making-an-existing-template-available

In dit voorbeeld wordt getoond hoe u een sjabloon kunt gebruiken voor bepaalde inhoudspaden. De sjablonen die beschikbaar zijn voor de auteur van de pagina wanneer u nieuwe pagina's maakt, worden bepaald door de logica die is gedefinieerd in Beschikbaarheid sjabloon.

  1. Navigeer in CRXDE Lite naar de sjabloon die u voor de pagina wilt gebruiken, bijvoorbeeld de sjabloon Nieuwsbrief.

  2. Wijzig de allowedPaths eigenschap en andere eigenschappen gebruikt voor beschikbaarheid van sjabloon. Bijvoorbeeld: allowedPaths: /content/geometrixx-outdoors/[^/]+(/.*)? betekent dat deze sjabloon is toegestaan in een pad onder /content/geometrixx-outdoors.

    chlimage_1-252

recommendation-more-help
2315f3f5-cb4a-4530-9999-30c8319c520e