Inhaltsfragmente, die Komponenten für die Wiedergabe konfigurieren content-fragments-configuring-components-for-rendering

Es gibt mehrere erweiterte Services zum Rendern von Inhaltsfragmenten. Um diese Services zu verwenden, müssen sich die Ressourcentypen dieser Komponenten dem Inhaltsfragmente-Framework bekannt machen.

Dies erfolgt durch die Konfiguration von OSGi-Service – Konfiguration der Inhaltsfragment-Komponente.

Diese Informationen sind erforderlich, wenn Sie:

  • Ihre eigene auf einem Inhaltsfragment basierende Komponente bereitstellen
  • und die erweiterten Services verwenden müssen.

Adobe empfiehlt, die Kernkomponenten zu verwenden.

CAUTION
  • Wenn Sie die unten beschriebenen erweiterten Services nicht benötigen, können Sie diese Konfiguration ignorieren.

  • Wenn Sie die vordefinierte(n) Komponente(n) erweitern oder verwenden, wird eine Änderung der OSGi-Konfiguration nicht empfohlen.

  • Sie können eine Komponente von Grund auf neu schreiben, die nur die Inhaltsfragmente-API verwendet, ohne die erweiterten Services zu nutzen. In einem solchen Fall müssen Sie Ihre Komponente jedoch so entwickeln, dass sie die entsprechende Verarbeitung übernimmt.

Es wird daher empfohlen, die Kernkomponenten zu verwenden.

Definition erweiterter Services, die konfiguriert werden müssen definition-of-advanced-services-that-need-configuration

Die Services, die die Registrierung einer Komponente erfordern:

  • das korrekte Bestimmen von Abhängigkeiten während der Veröffentlichung (d. h. sicherstellen, dass Fragmente und Modelle automatisch mit einer Seite veröffentlicht werden können, wenn sie sich seit der letzten Veröffentlichung geändert haben)
  • unterstützen Inhaltsfragmente in der Volltextsuche,
  • verwalten/bearbeiten Zwischeninhalte,
  • verwalten/bearbeiten gemischte Medien-Assets,
  • Dispatcher-Flush für referenzierte Fragmente (wenn eine Seite, die ein Fragment enthält, erneut veröffentlicht wird),
  • verwenden absatzbasiertes Rendering.

Wenn Sie eine oder mehrere dieser Funktionen benötigen, ist es (in der Regel) einfacher, die vordefinierten erweiterten Services zu verwenden, anstatt sie von Grund auf neu zu entwickeln.

OSGi-Service – Konfiguration der Inhaltsfragment-Komponente osgi-service-content-fragment-component-configuration

Die Konfiguration muss an den OSGi-Service zur Konfiguration der Inhaltsfragment-Komponente gebunden sein:

com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl

NOTE
Weitere Informationen finden Sie unter OSGi-Konfiguration.

Zum Beispiel:

OSGi-Konfiguration, Konfiguration der Inhaltsfragment-Komponente

Die OSGi-Konfiguration lautet:

Bezeichnung
OSGi-Konfiguration
Beschreibung
Ressourcentyp
dam.cfm.component.resourceType

Der zu registrierende Ressourcentyp; z. B.

core/wcm/components/contentfragment/v1/contentfragment

Verweiseigenschaft
dam.cfm.component.fileReferenceProp
Der Name der Eigenschaft, die den Verweis auf das Fragment enthält; z. B. fragmentPath oder fileReference
Elementeigenschaft
dam.cfm.component.elementsProp
Der Name der Eigenschaft, die die Namen der zu rendernden Elemente enthält; z. B.elementName
Varianteneigenschaft
dam.cfm.component.variationProp
Der Name der Eigenschaft, die den Namen der zu rendernden Variante enthält; z. B.variationName

Für einige Funktionen muss Ihre Komponente vordefinierte Konventionen einhalten. In der folgenden Tabelle sind die Eigenschaften aufgeführt, die für jeden Absatz (d. h. jcr:paragraph für jede Komponenteninstanz) durch Ihre Komponente definiert werden müssen, damit die Services sie korrekt erkennen und verarbeiten können.

Eigenschaftsname
Beschreibung
paragraphScope

Eine Zeichenfolgeneigenschaft, die definiert, wie Absätze ausgegeben werden sollen, wenn sie sich im Rendermodus für einzelne Elemente befinden.

Werte:

  • all : zum Rendern aller Absätze
  • range : zum Rendern des Bereichs der Absätze, die hier angegeben sind: paragraphRange
paragraphRange

Eine Zeichenfolgeneigenschaft, die den Bereich der Absätze definiert, die ausgegeben werden sollen, wenn sie sich im Rendermodus für einzelne Elemente befinden.

Format:

  • 1 oder 1-3 oder 1-3;6;7-8 oder *-3;5-*

    • - Bereichsanzeige
    • ; Listentrennzeichen
    • * Platzhalter
  • nur ausgewertet, wenn paragraphScope = range

paragraphHeadings
Eine boolesche Eigenschaft, die definiert, ob Überschriften (z. B. h1, h2, h3) als Absätze (true) oder nicht als Absätze (false) gezählt werden sollen

Beispiel example

Sehen Sie sich folgendes Beispiel (in einer vordefinierten AEM-Instanz) an:

/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config

Es umfasst:

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"
recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab