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.

CAUTION
  • 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.

Portanto, é recomendável usar os Componentes principais.

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

NOTE
Consulte Configuração OSGi para obter mais detalhes.

Por exemplo:

Configuração do componente de fragmento de conteúdo da configuração OSGi

A configuração do OSGi é:

Rótulo
Configuração OSGi
Descrição
Tipo de recurso
dam.cfm.component.resourceType

O tipo de recurso a ser registrado; por exemplo,

core/wcm/components/contentfragment/v1/contentfragment

Propriedade de referência
dam.cfm.component.fileReferenceProp
O nome da propriedade que contém a referência ao fragmento; por exemplo, fragmentPath ou fileReference
Propriedade dos elementos
dam.cfm.component.elementsProp
O nome da propriedade que contém o(s) nome(s) do(s) elemento(s) a serem renderizados; por exemplo,elementName
Propriedade de variação
dam.cfm.component.variationProp
O nome da propriedade que contém o nome da variação a ser renderizada; por exemplo,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.

Nome de propriedade
Descrição
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ágrafos
  • range : para renderizar o intervalo de parágrafos fornecido por paragraphRange
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 ou 1-3 ou 1-3;6;7-8 ou *-3;5-*

    • - indicador de intervalo
    • ; separador de lista
    • * curinga
  • avaliado somente se paragraphScope estiver definido como range

paragraphHeadings
Uma propriedade booleana que define se os cabeçalhos (por exemplo, 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"
recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab