Personnaliser les consoles customizing-the-consoles
AEM comporte plusieurs mécanismes pour vous permettre de personnaliser les consoles et la fonctionnalité de création de pages de votre instance de création.
-
Clientlibs
Les bibliothèques clientes (clientlibs) vous permettent d’étendre l’implémentation par défaut afin d’obtenir la nouvelle fonctionnalité, tout en réutilisant les fonctions, objets et méthodes standard. Lors de la personnalisation, vous pouvez créer votre propre bibliothèque cliente sous/apps.
Par exemple, elle peut contenir le code requis pour votre composant personnalisé. -
Recouvrements
Les recouvrements sont basés sur les définitions de nœuds et vous permettent de recouvrir les fonctionnalités standard (dans/libs
) avec vos propres fonctionnalités personnalisées (dans/apps
). Lors de la création d’un recouvrement, il n’est pas nécessaire de disposer d’une copie 1:1 de l’original, car Sling Resource Merger autorise l’héritage.
Ils peuvent être utilisés de différentes manières pour étendre vos consoles AEM. Une petite sélection est abordée ci-dessous (à un niveau élevé).
- Utiliser et créer des clientlibs.
- Utiliser et créer des recouvrements.
- Granite
/libs
./libs
est remplacé dès que vous mettez à niveau votre instance (et risque de l’être si vous appliquez un correctif ou un Feature Pack).-
Recréez l’élément requis (tel qu’il existe dans
/libs
) sous/apps
. -
Apportez les modifications désirées dans
/apps
.
Par exemple, les emplacements suivants dans la structure /libs
risquent d’être recouverts :
-
Consoles (toutes les consoles basées sur les pages de l’IU Granite), par exemple :
/libs/wcm/core/content
Personnaliser l’affichage par défaut d’une console customizing-the-default-view-for-a-console
Vous pouvez personnaliser l’affichage par défaut (colonne, carte, liste) d’une console :
-
Vous pouvez réorganiser les vues en recouvrant l’entrée requise depuis l’emplacement suivant :
/libs/wcm/core/content/sites/jcr:content/views
La première entrée est la valeur par défaut.
Les nœuds disponibles correspondent aux options d’affichage disponibles :
column
card
list
-
Par exemple, dans un recouvrement de liste :
/apps/wcm/core/content/sites/jcr:content/views/list
Définissez la propriété suivante :
- Nom :
sling:orderBefore
- Type :
String
- Valeur :
column
- Nom :
Ajouter une nouvelle action à la barre d’outils add-new-action-to-the-toolbar
-
Vous pouvez créer vos propres composants et inclure les bibliothèques clientes correspondantes pour les actions personnalisées. Par exemple, une action Promouvoir sur Twitter à :
/apps/wcm/core/clientlibs/sites/js/twitter.js
Elle peut ensuite être connectée à un élément de la barre d’outils sur la console :
/apps/<yourProject>/admin/ext/launches
Par exemple, en mode de sélection :
content/jcr:content/body/content/header/items/selection/items/twitter
Limiter une action de la barre d’outils à un groupe spécifique restrict-a-toolbar-action-to-a-specific-group
-
Vous pouvez utiliser une condition de rendu personnalisée pour superposer l’action standard et imposer des conditions spécifiques qui doivent être remplies avant son rendu.
Par exemple, créez un composant pour contrôler les conditions de rendu en fonction du groupe :
/apps/myapp/components/renderconditions/group
-
Pour les appliquer à l’action Créer un site sur la console Sites :
/libs/wcm/core/content/sites
Créez le recouvrement :
/apps/wcm/core/content/sites
-
Ajoutez ensuite la condition de rendu pour l’action :
jcr:content/body/content/header/items/default/items/create/items/createsite/rendercondition
En utilisant des propriétés sur ce nœud, vous pouvez définir les
groups
autorisés à effectuer l’action spécifique ; par exemple, lesadministrators
.
Personnalisation des colonnes dans la vue Liste customizing-columns-in-the-list-view
cq/gui/components/siteadmin/admin/listview/columns/analyticscolumnrenderer
dans /apps
.Pour personnaliser les colonnes dans la vue Liste :
-
Recouvrez la liste des colonnes disponibles.
-
Sur le nœud :
code language-none /apps/wcm/core/content/common/availablecolumns
-
Ajoutez des colonnes ou supprimez des colonnes existantes.
Consultez Utilisation des recouvrements (et fusion de ressources Sling) pour plus d’informations.
-
-
Facultatif :
- Si vous souhaitez connecter des données supplémentaires, vous devez écrire un PageInforProvider avec une
pageInfoProviderType
.
Par exemple, consultez la classe/le lot joint (à partir de GitHub) ci-dessous.
- Si vous souhaitez connecter des données supplémentaires, vous devez écrire un PageInforProvider avec une
-
Vous pouvez maintenant sélectionner la colonne dans le configurateur de colonnes de la vue Liste.
Filtrer les ressources filtering-resources
Lors de l’utilisation d’une console, un cas d’utilisation courant se présente lorsque l’utilisateur ou l’utilisatrice doit effectuer un choix parmi des ressources (par exemple, des pages, des composants, des ressources, etc.). Cela peut prendre la forme d’une liste, par exemple à partir de laquelle l’auteur ou l’autrice doit choisir un élément.
Pour maintenir la liste à une taille raisonnable et adaptée au cas d’utilisation, un filtre peut être mis en œuvre sous la forme d’un prédicat personnalisé. Pour plus d’informations, voir Personnaliser la création de page : filtrage des ressources.