[AEM Sites]{class="badge positive" title="Aplicável ao AEM Sites)."}
Definição de Modelos de fragmentos de conteúdo defining-content-fragment-models
Os modelos de fragmento de conteúdo no Adobe Experience Manager (AEM) as a Cloud Service definem a estrutura do conteúdo dos seus fragmentos de conteúdo. Esses fragmentos podem ser usados para criação de página ou como base para o conteúdo headless.
Esta página aborda como definir o modelo de fragmento de conteúdo usando o editor dedicado. Consulte Gerenciamento de modelos de fragmento de conteúdo para obter mais tarefas e opções disponíveis após a criação dos fragmentos, incluindo ações disponíveis no Console de Fragmentos de conteúdo, permissão do modelo na sua pasta e publicação do seu modelo.
- "Este modelo tem um esquema de interface do usuário personalizado configurado. A ordem dos campos exibidos nesta interface pode não corresponder ao esquema da interface do usuário. Para exibir os campos alinhados ao esquema da interface do usuário, é necessário alternar para o novo Editor de fragmento de conteúdo."
Definição do Modelo de fragmento de conteúdo defining-your-content-fragment-model
O modelo de fragmento de conteúdo define efetivamente a estrutura dos fragmentos de conteúdo resultantes usando uma seleção de Tipos de dados. Usando o editor do modelo, é possível adicionar instâncias dos tipos de dados e configurá-las para criar os campos necessários:
-
No Console de fragmentos de conteúdo, selecione o painel para Modelos de fragmentos de conteúdo e navegue até a pasta que contém seu modelo de fragmento de conteúdo.
note NOTE Você também pode abrir um modelo diretamente após criá-lo. -
Abra o modelo necessário para Editar; use um dos links de ação rápida ou selecione o modelo e depois a ação na barra de ferramentas.
Uma vez aberto, o editor de modelo mostra:
-
início:
- Ícone da Página inicial
- opção para alternar entre o original e o novo editor
- Cancelar
- Salvar
-
à esquerda: Tipos de dados disponíveis para criar campos
-
meio: campos já definidos junto com a opção Adicionar
-
à direita: usando os ícones na extremidade direita, você pode selecionar entre:
- Propriedades: defina e exiba propriedades para o campo selecionado
- Detalhes do modelo: mostrar o status Habilitado, Título do Modelo, Marcas, Descrição e Visualizar URL
-
-
Para adicionar um campo
-
Ou:
- Arraste um tipo de dados do painel esquerdo para o local necessário para um campo no painel central.
- Selecione o ícone + por um Tipo de Dados para adicioná-lo à parte inferior da lista de campos.
- Selecione Adicionar no painel do meio e o tipo de dados necessário na lista suspensa resultante para adicionar um campo à parte inferior da lista.
note NOTE Os campos de espaço reservado para tabulação devem sempre aparecer acima dos campos existentes. -
É possível reposicionar um campo usando a formação de pontos à esquerda da caixa de campo:
-
Depois que um campo é adicionado ao modelo (e é selecionado), o painel direito mostra as Propriedades que podem ser definidas para esse tipo de dados específico. Aqui é possível definir o que é necessário para a
campo.-
Muitas propriedades são autoexplicativas. Para obter mais detalhes, consulte Propriedades (Tipos de Dados).
-
Digitar um Rótulo de Campo preenche automaticamente o Nome da Propriedade, se estiver vazio, e pode ser atualizado manualmente posteriormente.
note caution CAUTION Ao atualizar manualmente a propriedade Nome da Propriedade para um tipo de dados, os nomes devem conter somente A-Z, a-z, 0-9 e um sublinhado "_" como caractere especial. Se os modelos criados em versões anteriores do AEM contiverem caracteres ilegais, remova ou atualize esses caracteres.
Por exemplo:
note NOTE Quando um campo é definido como Obrigatório, o Rótulo indicado no painel do meio é marcado com um asterisco (*). -
-
-
Para remover um campo
Selecione o ícone da lixeira do campo apropriado no painel do meio.
-
Adicione todos os campos obrigatórios e defina as propriedades relacionadas, conforme necessário.
-
Selecione Salvar para salvar a definição.
Tipos de dados data-types
Uma variedade de tipos de dados está disponível para a definição do seu modelo:
-
Texto em linha única
- Adicionar um campo para uma única linha de texto; o comprimento máximo pode ser definido
- O campo pode ser configurado para permitir que os autores de fragmento criem novas instâncias do campo
-
Texto multilinha
- Uma área de texto que pode ser Rich Text, Texto sem formatação ou Markdown
- O campo pode ser configurado para permitir que os autores de fragmento criem novas instâncias do campo
note NOTE Se a área de texto é Rich Text, Texto sem formatação ou Markdown, é definida no modelo pela propriedade Tipo padrão. Este formato não pode ser alterado do editor de Fragmento de Conteúdo, mas somente do Modelo. -
Número
- Adicionar um campo numérico
- O campo pode ser configurado para permitir que os autores de fragmento criem novas instâncias do campo
-
Booleano
- Adicionar uma caixa de seleção booleana
-
Data e hora
- Adicionar um campo de data e/ou hora
-
Enumeração
- Adicionar um conjunto de caixas de seleção, botões de opção ou campos suspensos
- É possível especificar as opções disponíveis para o autor do fragmento
- Adicionar um conjunto de caixas de seleção, botões de opção ou campos suspensos
-
Tags
- Permite que os autores de fragmentos acessem e selecionem áreas de tags
-
Referência do fragmento
-
Faz referência a outros fragmentos de conteúdo; pode ser usado para criar conteúdo aninhado
-
O tipo de dados pode ser configurado para permitir que os autores de fragmento:
- Editem o fragmento referenciado diretamente.
- Crie um novo Fragmento de conteúdo, com base no modelo apropriado
- Criar novas instâncias do campo
-
A referência especifica o caminho para o recurso referenciado; por exemplo
/content/dam/path/to/resource
-
-
Referência de conteúdo
- Faz referência a outros conteúdos, de qualquer tipo; pode ser usado para criar conteúdo aninhado
- Se uma imagem for referenciada, você pode optar por mostrar uma miniatura
- O campo pode ser configurado para permitir que os autores de fragmento criem novas instâncias do campo
- A referência especifica o caminho para o recurso referenciado; por exemplo
/content/dam/path/to/resource
-
Composto
-
O tipo de dados Composto pode ser usado para criar conteúdo aninhado
-
O tipo de dados Composto permite que os Fragmentos de conteúdo armazenem dados hierárquicos e estruturados
- Isso é feito permitindo que os campos contenham subcampos aninhados
- Os subcampos estão estruturados
- Os subcampos são estruturados de acordo com os modelos de fragmento de conteúdo
- O subcampo é restrito aos modelos de fragmento de conteúdo especificados ao definir o subcampo
-
Esse recurso fornece uma maneira de modelar estruturas de dados complexas em um único fragmento, semelhantes a objetos aninhados em JSON ou documentos incorporados em bancos de dados NoSQL
note warning WARNING O tipo de dados Composite pode ser usado: - no Editor de modelo do fragmento de conteúdo da interface para toque (original)
- no novo Editor de fragmento de conteúdo
O novo Editor de modelo de fragmento de conteúdo e o Editor de fragmento de conteúdo da interface para toque (original) bloquearão o acesso ao Tipo de dados composto e a quaisquer campos dependentes. Para campos compostos no novo Editor de modelos de fragmentos de conteúdo, você verá a mensagem: Registre o renderizador para o tipo "composto". -
-
Objeto JSON
-
Permite que o autor do Fragmento de conteúdo insira a sintaxe JSON nos elementos correspondentes de um fragmento.
- Para permitir que o AEM armazene o JSON direto que você tenha copiado/colado de outro serviço.
- O JSON será transmitido e emitido como JSON no GraphQL.
- Inclui o realce da sintaxe JSON, o preenchimento automático e o realce de erros no editor de Fragmento de conteúdo.
-
-
Espaço reservado da guia
-
Permite a introdução de guias para uso ao editar o conteúdo do fragmento de conteúdo.
- Eles são mostrados como divisores no editor de modelo, separando seções da lista de tipos de dados de conteúdo. Cada instância representa o início de uma nova guia.
- No editor de fragmentos, cada instância aparece como uma guia.
note NOTE Esse tipo de dados é usado apenas para formatação e é ignorado pelo esquema GraphQL do AEM. Os campos de espaço reservado para tabulação devem sempre aparecer acima dos campos existentes.
-
Propriedades (Tipos de dados) properties
Muitas propriedades são autoexplicativas. Para certas propriedades, os detalhes adicionais são os seguintes:
-
Nome da Propriedade
Ao atualizar manualmente essa propriedade para um tipo de dados, os nomes devem conter somente A-Z, a-z, 0-9 e o sublinhado “_” como caractere especial.
note caution CAUTION Se os modelos criados em versões anteriores do AEM contiverem caracteres ilegais, remova ou atualize esses caracteres. -
Renderizar como
As várias opções para realizar/renderizar o campo em um fragmento. Geralmente, isso permite definir se o autor verá uma única instância do campo ou se poderá criar várias instâncias. Quando Vários Campos for usado, você poderá definir o número mínimo e máximo de itens - consulte Validação para obter mais detalhes.
-
Rótulo do campo
Inserir um Rótulo de Campo gera automaticamente um Nome de Propriedade, que pode ser atualizado manualmente se necessário. -
Validação
A validação básica está disponível por mecanismos como a propriedade Required. Alguns tipos de dados têm campos de validação de adição. Consulte Validação para obter mais detalhes. -
No tipo de dados Texto multilinha, é possível definir o Tipo padrão como:
- Rich Text
- Markdown
- Texto sem formatação
Se não for especificado, o valor padrão Rich Text é usado para esse campo.
Alterar o Tipo padrão em um modelo de Fragmento de conteúdo só terá efeito em um Fragmento de conteúdo existente relacionado depois que esse fragmento for aberto no editor e salvo.
-
Exclusivo
O conteúdo (para o campo específico) deve ser exclusivo em todos os fragmentos de conteúdo criados a partir do modelo atual.Isso é usado para garantir que os autores de conteúdo não possam repetir o conteúdo já adicionado em outro fragmento do mesmo modelo.
Por exemplo, um campo Texto de linha única chamado de
Countryno modelo de fragmento de conteúdo não pode ter o valorJapanem dois fragmentos de conteúdo dependentes. Um aviso será emitido na tentativa da segunda instância.note NOTE A exclusividade é assegurada por raiz de idioma. note NOTE As variações podem ter o mesmo valor exclusivo como variações do mesmo fragmento, mas não o mesmo valor usado em qualquer variação de outros fragmentos. -
Consulte Referência de conteúdo para obter mais detalhes sobre esse tipo de dados específico e suas propriedades.
-
Consulte Referência de fragmento para obter mais detalhes sobre esse tipo de dados específico e suas propriedades.
-
Traduzível
Marcar a caixa de seleção Traduzível em um campo no editor do modelo de fragmento de conteúdo:
- Garantirá que o nome da propriedade do campo seja adicionado à configuração de tradução, no contexto
/content/dam/<sites-configuration>, se ainda não estiver presente. - Para GraphQL: definirá uma propriedade
<translatable>no campo Fragmento de conteúdo parayes, permitindo o uso do filtro de consulta GraphQL para saída de JSON somente para conteúdo traduzível.
- Garantirá que o nome da propriedade do campo seja adicionado à configuração de tradução, no contexto
Validação validation
Vários tipos de dados agora incluem a possibilidade de definir requisitos de validação para quando o conteúdo é inserido no fragmento resultante:
-
Texto em linha única
- Comparar com uma expressão regular predefinida.
-
Número
- Verificar valores específicos.
-
Referência de conteúdo
- Testar tipos específicos de conteúdo.
- Somente ativos de tamanho de arquivo especificado ou menores podem ser referenciados.
- Somente imagens dentro de um intervalo predefinido de largura e/ou altura (em pixels) podem ser referenciadas.
-
Referência do fragmento
- Testar um modelo de Fragmento de conteúdo específico.
-
Número mínimo de itens / Número máximo de itens
Os campos que foram definidos como Vários Campos (definidos com Renderizar como) têm as seguintes opções:
- Número mínimo de itens
- Número Máximo de Itens
Eles são validados no Editor de fragmento de conteúdo.
Conteúdo aninhado nested-content
Os fragmentos de conteúdo podem formar conteúdo aninhado, usando qualquer um dos seguintes tipos de dados:
-
- Fornece uma referência simples a outro conteúdo, de qualquer tipo.
- Fornecido pelo tipo de dados Referência de Conteúdo
- Pode ser configurado para uma ou várias referências (no fragmento resultante).
-
-
Faz referência a outros fragmentos, dependendo dos modelos especificados.
-
Os fragmentos referenciados são distintos e separados do fragmento de referência.
-
Fornecido pelo tipo de dados Referência de fragmento.
-
Permite incluir/recuperar dados estruturados.
note NOTE Este método é especialmente interessante quando você está usando a Entrega de conteúdo headless usando fragmentos de conteúdo com o GraphQL. -
Pode ser configurado para uma ou várias referências (no fragmento resultante).
-
Adequado quando é necessário conteúdo modular e reutilizável.
-
-
Tipo de dados Composto:
- Faz referência a outros fragmentos, dependendo dos modelos especificados.
- Os fragmentos referenciados são totalmente incorporados ao fragmento de referência e integrantes dele. Eles têm um verdadeiro relacionamento pai-filho.
- O Tipo de dados compostos permite definir um grupo de campos como uma estrutura em linha e repetível dentro de um fragmento pai, em vez de apontar para uma referência de fragmento separada.
- Os campos compostos são editados na mesma sessão do editor que o fragmento principal.
- Permite incluir/recuperar dados estruturados.
- Adequado para campos compostos de vários valores em que a reutilização modular não é a meta principal.
- Permite o uso de estruturas de conteúdo mais planas e fáceis de gerenciar, além de poder ajudar a melhorar o desempenho do sistema e da API.
-
Referências do conteúdo
Isso impede que o usuário adicione uma referência ao fragmento atual e pode levar a uma caixa de diálogo vazia do seletor de Referência de fragmento. -
Referências de fragmento no GraphQL
Se você criar uma consulta profunda que retorna vários Fragmentos de conteúdo referenciados entre si, ela retornará um valor nulo na primeira ocorrência.
Referência de conteúdo content-reference
O tipo de dados Referência de Conteúdo permite renderizar o conteúdo de outra fonte; por exemplo, imagem, página ou Fragmento de Experiência.
Além das propriedades padrão, é possível especificar:
-
O Caminho Raiz, que especifica ou representa onde armazenar qualquer conteúdo referenciado
note NOTE Isso é obrigatório se você quiser fazer upload diretamente e fazer referência a imagens nesse campo ao usar o editor de fragmentos de conteúdo. Consulte Referenciar imagens para obter mais detalhes. -
Os tipos de conteúdo que podem ser referenciados
note NOTE Eles devem incluir Imagem se você quiser carregar e fazer referência diretamente a imagens nesse campo ao usar o editor de Fragmento de conteúdo. Consulte Referenciar imagens para obter mais detalhes. -
Limitações para tamanhos de arquivo
-
Se uma imagem for referenciada:
- Mostrar miniatura
- Restrições de altura e largura da imagem
Referência do fragmento fragment-reference
O tipo de dados Referência de fragmento pode fazer referência a um ou mais Fragmentos de conteúdo. Esse recurso é especialmente interessante ao recuperar conteúdo para uso no aplicativo, pois permite recuperar dados estruturados com várias camadas.
Por exemplo:
- Um modelo que define os detalhes de um funcionário, incluindo:
- Uma referência ao modelo que define o empregador (empresa)
type EmployeeModel {
name: String
firstName: String
company: CompanyModel
}
type CompanyModel {
name: String
street: String
city: String
}
Além das propriedades padrão, você pode definir:
-
Renderizar como:
-
Vários campos - o autor do fragmento pode criar várias referências individuais
-
Referência de fragmento - permite que o autor do fragmento selecione uma única referência a um fragmento
-
-
Tipo de modelo
Vários modelos podem ser selecionados. Ao adicionar referências a um fragmento de conteúdo, todos os fragmentos referenciados devem ter sido criados usando esses modelos. -
Caminho raiz
Especifica ou representa um caminho raiz para qualquer fragmento referenciado. -
Permitir criação de fragmentos
Isso permite que o autor do fragmento crie um fragmento com base no modelo apropriado.
Dados compostos composite-data
O tipo de dados Composto permite que os Fragmentos de conteúdo armazenem dados hierárquicos e estruturados, permitindo que os campos contenham subcampos aninhados. Os filhos (subcampos) são conteúdos estruturados, definidos por Modelos de Fragmento de Conteúdo especificados pelo usuário e totalmente incorporados ao fragmento pai.
O tipo de dados Composto fornece uma maneira de modelar estruturas de dados complexas em um único fragmento, semelhante a objetos aninhados em JSON ou documentos incorporados em bancos de dados NoSQL.
Um campo Composto tem as seguintes propriedades e características:
-
Especifique um ou mais modelos de fragmento de conteúdo
- Ao definir um campo Composto em um Modelo de fragmento de conteúdo, você deve definir quais modelos podem ser usados para os itens compostos.
- Vários modelos podem ser selecionados, para que o autor possa escolher qual modelo usar ao realmente adicionar um item.
-
Criação
- Os itens compostos são editados na mesma sessão do editor que o fragmento principal, sem abrir um fragmento de conteúdo separado.
-
Passar e repetir como um campo múltiplo
- Um composto de vários valores suporta a adição, remoção e reordenação de itens.
-
Composto de vários modelos
- Um único campo composto pode aceitar itens de vários modelos permitidos.
- O autor escolhe qual modelo usar ao adicionar um novo item.
-
Variações
- As variações de nível superior se aplicam às árvores compostas: uma variação pode ter um número diferente de itens compostos ou conteúdo diferente por item do principal.
- A seleção está somente no nível superior; o conteúdo aninhado reflete a variação escolhida.
-
Pesquisar
- O texto em itens compostos é pesquisável. O conteúdo correspondente retorna o fragmento de conteúdo principal nos resultados da pesquisa.
-
Entrega nativa
- O GraphQL e a OpenAPI retornam conteúdo composto como dados aninhados na carga principal, sem resolver um ativo Fragmento de conteúdo separado.
-
Limpar semântica de referência
-
É possível modelar o conteúdo que pertence ao pai e não é reutilizado.
note NOTE Reserve referências de fragmento para conteúdo que seja genuinamente reutilizável. Os dois são complementares, não substitutos.
-
Além das propriedades padrão, você pode definir:
-
Renderizar como
Especifique:
- Vários Campos oferecem suporte para adicionar/remover/reordenar com restrições mín/máx
- O Campo Composto contém no máximo um item
-
Número mín./máx. de itens
Para compostos de vários valores, defina os limites mínimo e máximo para o número de itens
-
Tipo
Especifique um ou mais modelos de fragmento de conteúdo. Os campos desses modelos aparecerão como itens compostos. Vários modelos podem ser selecionados, o autor escolhe qual modelo ao adicionar um item.
- no Editor do Modelo de Fragmento de Conteúdo da Interface para Toque (original)
- no novo Editor de fragmento de conteúdo
Benefícios do composto benefits-of-composite
O tipo de dados Composto oferece vários benefícios ao modelar dados:
-
Gerenciamento mais fácil das estruturas de conteúdo.
- Como os tipos de dados compostos são incorporados diretamente em um fragmento de conteúdo, não há necessidade de gerenciar pastas separadas ou estruturas de armazenamento para conteúdo composto, conforme exigido com os fragmentos referenciados.
- Isso resulta em estruturas de conteúdo mais simples e menos desordenadas, que simplificam a governança e facilitam a detecção do conteúdo composto.
-
Criação simplificada com suporte nativo para campos compostos de vários valores.
- Os itens em compostos de vários valores podem ser criados e editados na mesma sessão do editor que o fragmento principal.
- Os compostos podem reduzir a sobrecarga de referência e de metadados de fragmento.
-
Gerenciamento de conteúdo e desempenho de entrega aprimorados.
- Estruturas de conteúdo mais simples com menos referências de fragmento reduzem a sobrecarga da resolução de referência durante as operações de criação, publicação e entrega.
- Estruturas de conteúdo mais simples também diminuem o tamanho e a complexidade das cargas JSON, ajudando a melhorar a eficiência da API e o desempenho geral do lado do cliente.
Quando usar composto when-to-use-composite
O uso do tipo de dados Composto deve ser considerado cuidadosamente, pois seu caso de uso pode determinar qual tipo de conteúdo aninhado é a melhor solução para você.
-
Recomendado quando você:
- Conteúdo de tipo página ou tipo lista de cartões em que os filhos não são reutilizados em outro lugar.
- Estão enfrentando problemas de desempenho do gráfico de referência, na entrega ou na publicação.
- Faça com que os autores reclamem sobre os fluxos de trabalho de alternação de guias para conteúdo aninhado.
- Precisam de grupos passo a passo e repetição de vários campos que atualmente exigem tipos de dados personalizados ou ferramentas externas.
-
Tenha cuidado quando:
- O conteúdo é genuinamente reutilizável em fragmentos. As referências de fragmento permanecem a resposta certa para conteúdo compartilhado; a composição é para conteúdo incorporado.
- Você só usa o Editor da interface para toque (original). A composição é compatível com o novo Editor de fragmento de conteúdo, mas o Editor de interface para toque original bloqueará a edição de campos compostos.
Limitações do composto limitations-of-composite
A lista abaixo consolida as limitações atuais do tipo de dados Composto:
-
Superfície de criação
- Editor de fragmento da interface para toque (editor original)
- Não há suporte para campos compostos.
- Novo editor de modelo de fragmento de conteúdo (headless)
- O tipo Composto ainda não é suportado. A criação de modelo usa o Editor de modelo da interface de toque original.
Para campos Compostos, você verá a mensagem: Registre o renderizador para o tipo “composto”.
- O tipo Composto ainda não é suportado. A criação de modelo usa o Editor de modelo da interface de toque original.
- Editor de fragmento da interface para toque (editor original)
-
Suporte entre recursos
-
MSM (Multi Site Manager, Gerenciador de vários sites)
-
A herança só pode ser quebrada em campos de nível superior.
- A herança de um campo composto inteiro pode ser quebrada.
- Não há suporte para a quebra de herança de campos individuais dentro de itens compostos.
-
-
Lançamentos
- Fragmentos de conteúdo que contêm campos compostos não são compatíveis com inicializações, sejam selecionados diretamente ou incluídos por meio de referências de fragmento. Essas ações não são aceitas e falharão.
-
Componentes principais e o exportador do modelo do Sling
- A renderização da página por meio dos Componentes principais e do exportador do Modelo do Sling (
.model.json) ainda não oferece suporte a campos compostos.
- A renderização da página por meio dos Componentes principais e do exportador do Modelo do Sling (
-
Fragmentos de conteúdo visuais (Fragmentos de conteúdo com modelos do HTML)
- Fragmentos de conteúdo visuais (Fragmentos de conteúdo com modelos do HTML) não são compatíveis atualmente com campos compostos.
-