Personalização dos consoles customizing-the-consoles
O AEM fornece vários mecanismos para permitir que você personalize os consoles (e o funcionalidade de criação de página) da sua instância de criação.
-
Clientlibs
Clientlibs permitem estender a implementação padrão para realizar novas funcionalidades, enquanto reutiliza as funções, objetos e métodos padrão. Ao personalizar, você pode criar sua própria clientlib em
/apps.
Por exemplo, ele pode conter o código necessário para o seu componente personalizado. -
Sobreposições
As sobreposições são baseadas nas definições de nó e permitem que você sobreponha a funcionalidade padrão (em
/libs
) com sua própria funcionalidade personalizada (em/apps
). Ao criar uma sobreposição, não é necessária uma cópia 1:1 do original, pois a fusão de recursos do sling permite a herança.
Elas podem ser usadas de várias maneiras para estender seus consoles de AEM. Uma pequena seleção é abordada abaixo (em um nível alto).
- Uso e criação clientlibs.
- Uso e criação sobreposições.
- Granite
/libs
caminho./libs
O é substituído na próxima vez que você atualizar sua instância (e pode ser substituído quando você aplicar um hotfix ou pacote de recursos).-
Recrie o item necessário (ou seja, como ele existe em
/libs
)/apps
-
Faça quaisquer alterações no
/apps
Por exemplo, os seguintes locais na variável /libs
estrutura pode ser sobreposta:
-
consoles (qualquer console baseado nas páginas da interface de usuário do Granite); por exemplo:
/libs/wcm/core/content
Personalização da exibição padrão de um console customizing-the-default-view-for-a-console
Você pode personalizar a exibição padrão (coluna, cartão, lista) de um console:
-
Você pode reordenar as exibições sobrepondo a entrada necessária de em:
/libs/wcm/core/content/sites/jcr:content/views
A primeira entrada será o padrão.
Os nós disponíveis correlacionam-se às opções de exibição disponíveis:
column
card
list
-
Por exemplo, em uma sobreposição para a lista:
/apps/wcm/core/content/sites/jcr:content/views/list
Defina a seguinte propriedade:
- Nome:
sling:orderBefore
- Tipo:
String
- Valor:
column
- Nome:
Adicionar nova ação à barra de ferramentas add-new-action-to-the-toolbar
-
Você pode criar seus próprios componentes e incluir as bibliotecas de clientes correspondentes para ações personalizadas. Por exemplo, um Promover para Twitter ação em:
/apps/wcm/core/clientlibs/sites/js/twitter.js
Isso pode ser conectado a um item da barra de ferramentas no console:
/apps/<yourProject>/admin/ext/launches
Por exemplo, no modo de seleção:
content/jcr:content/body/content/header/items/selection/items/twitter
Restringir uma ação da barra de ferramentas a um grupo específico restrict-a-toolbar-action-to-a-specific-group
-
Você pode usar uma condição de renderização personalizada para sobrepor a ação padrão e impor condições específicas que devem ser cumpridas antes da renderização.
Por exemplo, crie um componente para controlar as condições de renderização de acordo com o grupo:
/apps/myapp/components/renderconditions/group
-
Para aplicá-los à ação Criar site no console Sites :
/libs/wcm/core/content/sites
Crie a sobreposição:
/apps/wcm/core/content/sites
-
Em seguida, adicione a condição de renderização para a ação:
jcr:content/body/content/header/items/default/items/create/items/createsite/rendercondition
Usando as propriedades neste nó, é possível definir a variável
groups
Autorizados a executar a ação específica; por exemplo,administrators
Personalização de colunas na exibição de lista customizing-columns-in-the-list-view
cq/gui/components/siteadmin/admin/listview/columns/analyticscolumnrenderer
em /apps
.Para personalizar as colunas na exibição de lista:
-
Sobreponha a lista de colunas disponíveis.
-
No nó :
/apps/wcm/core/content/common/availablecolumns
-
Adicione as novas colunas ou remova as existentes.
Consulte Uso de sobreposições (e da Fusão de recursos do Sling) para obter mais informações.
-
-
Opcionalmente:
-
Se desejar plug-in de dados adicionais, é necessário gravar um
[PageInforProvider](https://helpx.adobe.com/experience-manager/6-4/sites/developing/using/reference-materials/javadoc/com/day/cq/wcm/api/PageInfoProvider.html)
com umpageInfoProviderType
propriedade.
Por exemplo, consulte a classe/pacote anexado (do GitHub) abaixo.
-
-
Agora é possível selecionar a coluna no configurador de colunas da exibição em lista.
Filtrar recursos filtering-resources
Ao usar um console, um caso de uso comum é quando o usuário deve selecionar entre recursos (por exemplo, páginas, componentes, ativos etc.). Isso pode assumir a forma de uma lista, por exemplo, da qual o autor deve escolher um item.
Para manter a lista em um tamanho razoável e também relevante para o caso de uso, um filtro pode ser implementado na forma de um predicado personalizado. Consulte este artigo para obter detalhes.