Modelos de fragmentos do conteúdo content-fragment-models
Os modelos de fragmento de conteúdo no Adobe Experience Manager (AEM) as a Cloud Service 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.
Para usar modelos de fragmento de conteúdo, você pode:
- Ativar a funcionalidade de modelo de fragmento de conteúdo para sua instância
- Criar e configurar os modelos de fragmento de conteúdo
- Ativar os Modelos de fragmento de conteúdo para uso ao criar Fragmentos de conteúdo
- Autorizar os modelos de fragmento de conteúdo nas pastas de ativos necessárias ao configurar as Políticas.
Criação de um modelo de fragmento de conteúdo creating-a-content-fragment-model
-
Navegue até Ferramentas, Geral e, em seguida, abra Modelos de fragmentos de conteúdo.
-
Navegue até a pasta apropriada à sua configuração ou subconfiguração.
-
Use Criar para abrir o assistente.
note caution CAUTION Se o uso de modelos de Fragmento de Conteúdo não foi habilitado, a opção Criar não estará disponível. -
Especifique o Título do Modelo.
Você também pode definir várias propriedades; por exemplo, adicionar Marcas, uma Descrição, selecionar Habilitar modelo para habilitar o modelo se necessário e definir o
Padrão de URL de Visualização Padrão.note note NOTE Consulte Modelo de fragmento de conteúdo - Propriedades para obter detalhes completos. -
Use Criar para salvar o modelo vazio. Uma mensagem indica o sucesso da ação. Você pode selecionar Abrir para editar imediatamente o modelo, ou Concluído para retornar ao console.
Modelo do fragmento de conteúdo — Propriedades content-fragment-model-properties
Essas propriedades são definidas ao criar um modelo e podem ser editadas posteriormente com a opção Propriedades do Modelo de fragmento de conteúdo:
-
Básico
-
Título do modelo
-
Tags
-
Descrição
-
Habilitar modelo
-
Padrão de URL de Visualização Padrão
O editor de fragmento de conteúdo permite que os autores Visualizem o conteúdo em um aplicativo de front-end externo. Depois que o Serviço de visualização estiver configurado, adicione a URL para o aplicativo front-end.O URL de visualização deve seguir este padrão:
https://<preview_url>?param=${expression}
As expressões disponíveis são:
${contentFragment.path}
${contentFragment.model.path}
${contentFragment.model.name}
${contentFragment.variation}
${contentFragment.id}
-
Fazer upload de imagem
-
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:
-
Navegue até Ferramentas, Geral e, em seguida, abra Modelos de fragmentos de conteúdo.
-
Navegue até a pasta que contém o modelo de Fragmento de conteúdo.
-
Abra o modelo necessário para Edição; use a 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:
- à esquerda: campos já definidos
- à direita: Tipos de dados disponíveis para criar campos (e Propriedades para uso depois que os campos forem criados)
note note NOTE Quando um campo é definido como Obrigatório, o Rótulo indicado no painel à esquerda é marcado com um asterisco (*).
-
Para adicionar um campo
-
Arraste um tipo de dados necessário para o local exigido de um campo:
-
Depois que um campo é adicionado ao modelo, 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 esse campo.
-
Muitas propriedades são autoexplicativas. Para obter mais detalhes, consulte Propriedades.
-
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:
-
-
-
Para remover um campo
Selecione o campo obrigatório e, em seguida, o ícone da lixeira. Você receberá uma solicitação para confirmar a ação.
-
Adicione todos os campos obrigatórios e defina as propriedades relacionadas, conforme necessário. Por exemplo:
-
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 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 fragmento (UUID)
-
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
-
No editor, a referência especifica o caminho para o recurso referenciado; internamente, a referência é mantida como uma ID universalmente exclusiva (UUID) que faz referência ao recurso
- Não é necessário conhecer a UUID; no editor de fragmentos, é possível navegar até o fragmento necessário
-
-
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
-
Referência de conteúdo (UUID)
- 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
- No editor, a referência especifica o caminho para o recurso referenciado; internamente, a referência é mantida como uma ID universalmente exclusiva (UUID) que faz referência ao recurso
- Não é necessário conhecer a UUID; no editor de fragmentos, é possível navegar até o recurso de ativo necessário
-
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 NOTE Esse tipo de dados é usado apenas para formatação e é ignorado pelo esquema GraphQL do AEM.
-
Propriedades 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 meio de mecanismos como a propriedade Obrigatório. 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
Country
no modelo de fragmento de conteúdo não pode ter o valorJapan
em dois fragmentos de conteúdo dependentes. Um aviso será emitido na tentativa da segunda instância.note note NOTE A exclusividade é assegurada por raiz de idioma. note 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 (fragmentos aninhados) 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.
Usar referências para formar conteúdo aninhado using-references-to-form-nested-content
Os fragmentos de conteúdo podem formar conteúdo aninhado, usando um dos seguintes tipos de dados:
-
-
Fornece uma referência simples a outro conteúdo, de qualquer tipo.
-
Fornecidos pelos tipos de dados:
- Referência de conteúdo - baseada em caminho
- Referência de conteúdo (UUID) - baseada em UUID
-
Pode ser configurado para uma ou várias referências (no fragmento resultante).
-
-
Referência de fragmento (fragmentos aninhados)
-
Faz referência a outros fragmentos, dependendo dos modelos especificados.
-
Fornecidos pelos tipos de dados:
- Referência de fragmento - baseada em caminho
- Referência de fragmento (UUID) - baseada em UUID
-
Permite incluir/recuperar dados estruturados.
note 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).
-
-
Referências de 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
Os tipos de dados Referência de Conteúdo e Referência de Conteúdo (UUID) permitem 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 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 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 de fragmento (fragmentos aninhados) fragment-reference-nested-fragments
Os tipos de dados Referência de Fragmento e Referência de Fragmento (UUID) podem 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:
-
multifield — o autor do fragmento pode criar várias referências individuais
-
fragmentreference — 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.
- fragmentreferencecomposite — permite que o autor do fragmento crie uma composição ao selecionar vários fragmentos
Ativar ou desativar um Modelo de fragmento de conteúdo enabling-disabling-a-content-fragment-model
Você pode Habilitar ou Desabilitar os modelos de fragmento de conteúdo para ter controle total sobre seu uso.
Ativar um modelo de fragmento de conteúdo enabling-a-content-fragment-model
Depois que um modelo é criado, ele deve ser ativado para:
- Está disponível para seleção ao criar um fragmento de conteúdo.
- Poder ser referenciado a partir de um modelo de fragmento de conteúdo.
- Estar disponível no GraphQL; assim, o esquema é gerado.
Para ativar um modelo que esteja sinalizado como:
- Rascunho : novo (nunca habilitado).
- Desativado: foi especificamente desativado.
Você usa a opção Ativar a partir:
- Da barra de ferramentas superior, quando o modelo necessário estiver selecionado.
- Da ação rápida correspondente (passa o mouse sobre o modelo necessário).
Desativar um modelo de fragmento de conteúdo disabling-a-content-fragment-model
Um modelo também pode ser desativado para que:
-
O modelo não fique mais disponível como base para a criação de novos fragmentos de conteúdo.
-
No entanto:
- O esquema de GraphQL continua sendo gerado e ainda pode ser consultado (para evitar impacto na API JSON).
- Quaisquer fragmentos de conteúdo baseados no modelo ainda podem ser consultados e retornados a partir do ponto de acesso do GraphQL.
-
O modelo não pode mais ser referenciado, mas as referências existentes são mantidas e ainda podem ser consultadas e retornadas a partir do ponto de acesso do GraphQL.
Para desabilitar um Modelo que esteja sinalizado como Habilitado, use a opção Desabilitar:
- Da barra de ferramentas superior, quando o modelo necessário estiver selecionado.
- Da ação rápida correspondente (passa o mouse sobre o modelo necessário).
Permitir modelos de fragmentos de conteúdo na pasta de ativos allowing-content-fragment-models-assets-folder
Para implementar a governança de conteúdo, você pode configurar Políticas na pasta de ativos para controlar quais modelos de fragmento de conteúdo são permitidos na criação de fragmentos dessa pasta.
Para configurar as políticas para modelos de fragmento de conteúdo permitidos:
-
Navegue e abra as Propriedades da pasta de ativos necessária.
-
Abra a guia Políticas, onde é possível configurar:
-
Herdado de
<folder>
As políticas são automaticamente herdadas ao criar novas pastas derivadas; a política pode ser reconfigurada (e a herança quebrada) se as subpastas precisarem permitir modelos diferentes da pasta principal.
-
Modelos de fragmento de conteúdo permitidos por caminho
Vários modelos podem ser permitidos.
-
Modelos de fragmento de conteúdo permitidos por tag
Vários modelos podem ser permitidos.
-
-
Salve quaisquer alterações.
Os modelos de fragmento de conteúdo permitidos para uma pasta são resolvidos da seguinte maneira:
- As políticas para modelos de fragmento do conteúdo permitidos.
- Se estiver vazia, tente determinar a política usando as regras de herança.
- Se a cadeia de herança não fornecer um resultado, verifique a configuração de Cloud Services dessa pasta (diretamente e, em seguida, por herança).
- Se nenhuma das opções acima fornecer resultados, então não há modelos permitidos para essa pasta.
Exclusão de um modelo de fragmento de conteúdo deleting-a-content-fragment-model
Para excluir um modelo de fragmento de conteúdo:
-
Navegue até Ferramentas, Geral e, em seguida, abra Modelos de fragmentos de conteúdo.
-
Navegue até a pasta que contém o modelo de Fragmento de conteúdo.
-
Selecione seu modelo e, em seguida, Excluir na barra de ferramentas.
note note NOTE Se o modelo for referenciado, um aviso será exibido para que você possa tomar as medidas apropriadas.
Publicação de um Modelo de fragmento de conteúdo publishing-a-content-fragment-model
Os modelos de fragmento de conteúdo precisam ser publicados quando/antes de qualquer fragmento de conteúdo dependente ser publicado.
Para publicar um modelo de fragmento de conteúdo:
-
Navegue até Ferramentas, Geral e, em seguida, abra Modelos de fragmentos de conteúdo.
-
Navegue até a pasta que contém o modelo de Fragmento de conteúdo.
-
Selecione seu modelo e, em seguida, Publicar na barra de ferramentas.
O status publicado é exibido no console.note note NOTE Se você publicar um fragmento de conteúdo cujo modelo ainda não foi publicado, uma lista de seleção indicará isso e o modelo será publicado junto com o fragmento.
Desfazer a publicação de um Modelo de fragmento de conteúdo unpublishing-a-content-fragment-model
Os modelos de fragmento de conteúdo podem ter a publicação desfeita se não forem referenciados por nenhum fragmento.
Para desfazer a publicação de um modelo de fragmento de conteúdo:
-
Navegue até Ferramentas, Geral e, em seguida, abra Modelos de fragmentos de conteúdo.
-
Navegue até a pasta que contém o modelo de fragmento de conteúdo.
-
Selecione seu modelo e, em seguida, Desfazer publicação na barra de ferramentas.
O status publicado é indicado no console.
Se você tentar desfazer a publicação de um modelo que é usado atualmente por um ou mais fragmentos, um aviso de erro será exibido. Por exemplo:
A mensagem sugere que você verifique o painel Referências para investigar melhor:
Modelos de fragmentos de conteúdo bloqueados (publicados) locked-published-content-fragment-models
Esse recurso fornece o controle dos modelos de fragmento de conteúdo que foram publicados.
O desafio the-challenge
-
Os modelos de fragmento de conteúdo determinam o esquema para consultas GraphQL no AEM.
-
Os esquemas GraphQL do AEM são criados assim que um modelo de fragmento de conteúdo é criado e podem existir em ambientes do autor e de publicação.
-
Os esquemas em publicação são os mais críticos, pois fornecem a base para a entrega em tempo real do conteúdo do fragmento de conteúdo no formato JSON.
-
-
Problemas podem ocorrer quando os modelos de fragmento de conteúdo são modificados ou, em outras palavras, editados. Isso significa que o esquema é alterado, o que, por sua vez, pode afetar as consultas GraphQL existentes.
-
A adição de novos campos a um modelo de fragmento de conteúdo (normalmente) não deve ter efeitos prejudiciais. No entanto, a modificação de campos de dados existentes (por exemplo, seu nome) ou a exclusão de definições de campos quebrará as consultas GraphQL existentes quando estas solicitarem esses campos.
Os requisitos the-requirements
-
Conscientizar os usuários sobre os riscos de se editar modelos que já são usados para a entrega de conteúdo em tempo real (em outras palavras, modelos que foram publicados).
-
Além disso, evitar alterações não intencionais.
Qualquer um desses critérios pode quebrar as consultas se os modelos modificados forem republicados.
A solução the-solution
Para solucionar esses problemas, os modelos de fragmento de conteúdo são bloqueados em um modo SOMENTE LEITURA na criação — assim que são publicados. Este status é indicado por Bloqueado:
Quando o modelo está bloqueado (no modo SOMENTE LEITURA ), é possível visualizar o conteúdo e a estrutura dos modelos, mas não editá-los.
É possível gerenciar modelos Bloqueados no console ou no editor de modelos:
-
Console
No console, é possível gerenciar o modo SOMENTE LEITURA com as ações Desbloquear e Bloquear da barra de ferramentas:
-
É possível desbloquear um modelo para permitir a edição.
Se você selecionar Desbloquear, um aviso será exibido e você deverá confirmar a ação Desbloquear:
Em seguida, você pode abrir o modelo para edição.
-
Também é possível bloquear o modelo depois.
-
A republicação do modelo imediatamente o retorna ao modo Bloqueado (SOMENTE LEITURA).
-
-
Editor de modelos
-
Ao abrir um modelo bloqueado, você será avisado e três ações serão apresentadas: Cancelar, Visualizar somente leitura e Editar:
-
Se você selecionar Exibir Somente Leitura, poderá ver o conteúdo e a estrutura do modelo:
-
Se você selecionar Editar, poderá editar e salvar suas atualizações:
note note NOTE Ainda pode haver um aviso na parte superior, mas isso acontece quando o modelo já está em uso pelos fragmentos de conteúdo existentes. -
Cancelar retorna você ao console.
-