Inhoudsfragmenten die componenten voor rendering configureren content-fragments-configuring-components-for-rendering
Er zijn verscheidene geavanceerde dienstenmet betrekking tot het teruggeven van inhoudsfragmenten. Om deze diensten te gebruiken, moeten de middeltypes van dergelijke componenten zich aan het kader van inhoudsfragmenten bekendmaken.
Dit wordt gedaan door de Dienst OSGi te vormen - de Configuratie van de Component van het Fragment van de Inhoud.
Deze informatie is vereist wanneer:
- U moet uw eigen op fragmenten gebaseerde component voor inhoudsfragmenten implementeren,
- En de geavanceerde services moeten worden gebruikt.
Adobe raadt u aan de Core Components (Basiscomponenten) te gebruiken.
-
als u niet de geavanceerde hieronder beschreven diensten nodig hebt, kunt u deze configuratie negeren.
-
wanneer u uitbreidt of de uit-van-de-doos component(s) gebruikt, wordt het niet geadviseerd om de configuratie te veranderen OSGi.
-
u kunt een component van kras schrijven die de slechts Inhoudsfragmenten API, zonder de geavanceerde diensten gebruikt. In een dergelijk geval moet u de component echter zodanig ontwikkelen dat deze de juiste verwerking afhandelt.
Definitie van de Geavanceerde Diensten die Configuratie vereisen definition-of-advanced-services-that-need-configuration
De diensten die de registratie van een component vereisen zijn:
- De afhankelijkheden correct bepalen tijdens de publicatie (dat wil zeggen dat fragmenten en modellen automatisch met een pagina kunnen worden gepubliceerd als ze zijn gewijzigd sinds de laatste publicatie).
- Ondersteuning voor inhoudsfragmenten in volledige tekstzoekopdracht.
- Het beheer/de behandeling van in-tussen inhoud.
- Het beheer/de behandeling van gemengde media activa.
- Dispatcher wordt uitgelijnd op fragmenten waarnaar wordt verwezen (als een pagina met een fragment opnieuw wordt gepubliceerd).
- Op alinea's gebaseerde rendering gebruiken.
Als u één of meerdere van deze eigenschappen nodig hebt, dan (typisch) is het gemakkelijker om de uit-van-de-doos Geavanceerde Diensten te gebruiken, in plaats van hen van kras te ontwikkelen.
OSGi Service - Configuratie van de Component van het Fragment van de Inhoud osgi-service-content-fragment-component-configuration
De configuratie moet aan de OSGi dienst Configuratie van de Component van het Fragment van de Inhoud worden gebonden:
com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl
Bijvoorbeeld:
De configuratie OSGi is:
dam.cfm.component.resourceType
Het brontype dat moet worden geregistreerd, bijvoorbeeld
core/wcm/components/contentfragment/v1/contentfragment
dam.cfm.component.fileReferenceProp
fragmentPath
of fileReference
dam.cfm.component.elementsProp
elementName
dam.cfm.component.variationProp
variationName
Voor bepaalde functionaliteit moet de component zich aan vooraf gedefinieerde conventies houden. In de volgende tabel worden de eigenschappen beschreven die door de component voor elke alinea (dat wil zeggen jcr:paragraph
voor elke componentinstantie) moeten worden gedefinieerd, zodat de services deze op de juiste manier kunnen detecteren en verwerken.
paragraphScope
Een koordbezit dat bepaalt hoe de paragrafen moeten worden uitgevoerd als in enig element wijze teruggeeft.
Waarden:
all
: alle alinea's renderenrange
: voor het weergeven van het bereik van alinea's die worden geleverd doorparagraphRange
paragraphRange
Een koordbezit dat de waaier van paragrafen bepaalt om te worden uitgevoerd als in enig element wijze teruggeeft.
Indeling:
-
1
of1-3
of1-3;6;7-8
of*-3;5-*
-
bereikindicator;
lijstscheidingsteken*
jokerteken
-
alleen geëvalueerd als
paragraphScope
is ingesteld oprange
paragraphHeadings
h1
, h2
, h3
) worden geteld als alinea's (true
) of niet (false
)Voorbeeld example
Zie bijvoorbeeld het volgende (op een uit-van-de-doos AEM instantie):
/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config
Dit bevat:
dam.cfm.component.resourceType="core/wcm/components/contentfragment/v1/contentfragment"
dam.cfm.component.fileReferenceProp="fragmentPath"
dam.cfm.component.elementsProp="elementName"
dam.cfm.component.variationProp="variationName"