Fragmentos de conteúdo configuram componentes para renderização content-fragments-configuring-components-for-rendering
Há vários serviços avançados relacionados à renderização de fragmentos de conteúdo. Para usar esses serviços, os tipos de recursos desses componentes devem se tornar conhecidos pela estrutura de fragmentos de conteúdo.
Isso é feito configurando o Serviço OSGi - Configuração do componente de fragmento de conteúdo.
Essas informações são necessárias quando:
- Você precisa implementar seu próprio componente baseado em Fragmento de conteúdo,
- E precisam usar os serviços avançados.
O Adobe recomenda usar os Componentes principais.
-
Se você não precisar dos serviços avançados descritos abaixo, ignore essa configuração.
-
Ao estender ou usar o(s) componente(s) predefinido(s), não é recomendável alterar a configuração do OSGi.
-
Você pode gravar um componente do zero que use somente a API de fragmentos de conteúdo, sem serviços avançados. No entanto, nesse caso, será necessário desenvolver o componente para que ele manipule o processamento apropriado.
Definição de serviços avançados que precisam de configuração definition-of-advanced-services-that-need-configuration
Os serviços que exigem o registro de um componente são:
- Determinar as dependências corretamente durante a publicação (ou seja, verifique se os fragmentos e modelos podem ser publicados automaticamente com uma página se foram alterados desde a última publicação).
- Suporte para fragmentos de conteúdo na pesquisa de texto completo.
- O gerenciamento/manuseio de conteúdo intermediário.
- O gerenciamento/manuseio de ativos de mídia mista.
- Limpeza do Dispatcher para fragmentos referenciados (se uma página contendo um fragmento for republicada).
- Uso da renderização baseada em parágrafo.
Se você precisar de um ou mais desses recursos, (normalmente) é mais fácil usar os Serviços avançados prontos para uso, em vez de desenvolvê-los do zero.
Serviço OSGi - Configuração do componente de fragmento de conteúdo osgi-service-content-fragment-component-configuration
A configuração deve ser associada à Configuração do componente de fragmento de conteúdo do serviço OSGi:
com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl
Por exemplo:
A configuração do OSGi é:
dam.cfm.component.resourceType
O tipo de recurso a ser registrado; por exemplo,
core/wcm/components/contentfragment/v1/contentfragment
dam.cfm.component.fileReferenceProp
fragmentPath
ou fileReference
dam.cfm.component.elementsProp
elementName
dam.cfm.component.variationProp
variationName
Para algumas funcionalidades, seu componente terá que aderir a convenções predefinidas. A tabela a seguir detalha as propriedades que precisam ser definidas pelo componente para cada parágrafo (ou seja, jcr:paragraph
para cada instância de componente) para que os serviços possam detectá-las e processá-las corretamente.
paragraphScope
Uma propriedade de cadeia de caracteres que define como os parágrafos devem ser gerados se estiverem no modo de renderização de elemento único.
Valores:
all
: para renderizar todos os parágrafosrange
: para renderizar o intervalo de parágrafos fornecido porparagraphRange
paragraphRange
Uma propriedade de cadeia de caracteres que define o intervalo de parágrafos a ser gerado se estiver em modo de renderização de elemento único.
Formato:
-
1
ou1-3
ou1-3;6;7-8
ou*-3;5-*
-
indicador de intervalo;
separador de lista*
curinga
-
avaliado somente se
paragraphScope
estiver definido comorange
paragraphHeadings
h1
, h2
, h3
) são contados como parágrafos (true
) ou não (false
)Exemplo example
Como exemplo, consulte o seguinte (em uma instância de AEM pronta para uso):
/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config
Ele contém:
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"