Vous consultez actuellement l'aide de la version:

Le système de style permet à un auteur de modèles de définir des classes de style dans la stratégie de contenu d’un composant, de façon à pouvoir sélectionner ces classes lors de la modification du composant sur une page. Ces styles peuvent être des variantes visuelles d’un composant, le rendant ainsi plus flexible.

Cela rend inutile le développement d’un composant personnalisé pour chaque style ou la personnalisation d’une boîte de dialogue de composant pour activer une telle fonctionnalité de style. On obtient ainsi des composants plus réutilisables, pouvant être adaptés, rapidement et aisément, aux besoins des auteurs de contenu sans développement back-end dans AEM.

Exemple d’utilisation

Les auteurs de modèles doivent être en mesure de configurer non seulement le mode de fonctionnement des composants pour les auteurs de contenu, mais aussi diverses variantes visuelles d’un composant.

De même, les auteurs de contenu ne doivent pas seulement pouvoir structurer et organiser leur contenu. Ils doivent également être en mesure de choisir leur présentation visuelle.

Le système de style constitue une solution unifiée pour répondre aux exigences des auteurs de contenu comme de modèles :

  • Les auteurs de modèles peuvent définir des classes de style dans la stratégie de contenu des composants.
  • Les auteurs de contenu peuvent sélectionner ces classes dans un menu déroulant lorsqu’ils modifient le composant sur une page pour appliquer les styles correspondants.

La classe de style est ensuite insérée sur l’élément wrapper du composant, de façon à ce que le développeur de composants n’ait pas besoin de gérer les styles (en plus de fournir leurs règles CSS).

Aperçu

L’utilisation du système de style se passe généralement comme suit.

  1. Le concepteur web crée différentes variantes visuelles d’un composant.

  2. Le développeur HTML dispose de la sortie HTML des composants et des variantes visuelles à mettre en œuvre.

  3. Le développeur HTML définit les classes CSS qui correspondent à chaque variante visuelle et qui doivent être insérées sur l’élément qui enveloppe les composants.

  4. Le développeur HTML met en œuvre le code CSS correspondant (et, éventuellement, le code JS) pour que chaque variante visuelle ait l’apparence définie.

  5. Le développeur AEM place le code CSS (et en option, JS) fourni dans une bibliothèque cliente et le déploie.

  6. Le développeur AEM ou l’auteur de modèles configure les modèles de page et modifie la stratégie de chaque composant stylisé, en ajoutant les classes CSS définies, en attribuant des noms conviviaux à chaque style et en déterminant les styles qui peuvent être combinés.

  7. L’auteur des pages AEM peut alors choisir les styles conçus dans l’éditeur de page via le menu de style de la barre d’outils du composant.

Notez que seules les trois dernières étapes sont réalisées dans AEM. Cela signifie que l’ensemble du développement des codes CSS et Javascript peut être réalisé sans AEM.

La mise en œuvre des styles nécessite uniquement le déploiement dans AEM et la sélection des modèles souhaités parmi les composants.

Le diagramme suivant illustre l’architecture du système de style.

aem-style-system

Utilisation

Pour découvrir la fonctionnalité, il faut d’abord créer des styles pour un composant. En vous basant sur l’implémentation We.Retail du composant de liste du composant principal, vous pouvez installer le module joint contenant des styles afin de découvrir la fonctionnalité.

Telechargement

Remarque :

Le module de démonstration est conçu pour montrer comment les auteurs peuvent utiliser le système de style plutôt que pour montrer la meilleure manière de le mettre en œuvre.

Ce module ne sera plus nécessaire lorsque We.Retail aura fourni un exemple intégré et indiqué les meilleures pratiques de mise en œuvre.

Les sections suivantes, En tant qu’auteur de contenu et En tant qu’auteur de modèles, décrivent comment tester le système de style à l’aide du module de démonstration et de We.Retail.

Si vous souhaitez utiliser le système de style pour vos propres composants, procédez comme suit :

  1. Installez les CSS en tant que bibliothèques clientes, comme évoqué dans la section Aperçu.
  2. Configurez les classes CSS que vous souhaitez rendre disponibles à vos auteurs de contenu, comme décrit dans la section En tant qu’auteur de modèles.
  3. Les auteurs de contenu peuvent alors utiliser les styles, comme décrit dans la section En tant qu’auteur de contenu.

En tant qu’auteur de contenu

  1. Après avoir installé le module de démonstration du système de style, accédez à la page d’accueil de We.Retail (http://localhost:4502/sites.html/content/we-retail/language-masters/en) (en anglais) et modifiez la page.

  2. Sélectionnez le composant Liste en bas ou en haut du parsys. Ne le confondez pas avec le composant Liste d’articles.

    screen_shot_2017-11-15at162032
  3. Appuyez ou cliquez sur le bouton Styles dans la barre d’outils du composant Liste pour ouvrir le menu des styles et changer l’apparence du composant.

    screen_shot_2017-11-15at162358

    Remarque :

    Dans cet exemple, les styles de disposition (Bloc et Grille) sont mutuellement exclusifs, tandis que les options d’affichage ( Image ou Date) peuvent être combinées. Cela peut être configuré dans le modèle par l’auteur de modèles.

En tant qu’auteur de modèles

  1. Alors que vous modifiez la page d’accueil anglais de We.Retail (http://localhost:4502/sites.html/content/we-retail/language-masters/en) (en anglais), modifiez le modèle de la page via Informations sur la page -> Éditer le modèle.

    screen_shot_2017-11-15at162922
  2. Modifiez la police du composant Liste en appuyant ou cliquant sur le bouton Stratégie du composant. Ne le confondez pas avec le composant Liste d’articles.

    screen_shot_2017-11-15at163133
  3. Dans l’onglet Styles des propriétés, vous pouvez voir comment les styles ont été configurés.

    screen_shot_2017-12-15at101404
    • Nom de groupe : les styles peuvent être regroupés dans le menu des styles que l’auteur du contenu voit pendant la configuration du style du composant.
    • Les styles peuvent être combinés : permet de sélectionner simultanément plusieurs styles au sein de ce groupe.
    • Nom du style : description du style que l’auteur de contenu verra pendant la configuration du style du composant.
    • Classes CSS : nom réel de la classe CSS associée au style.

    Utilisez les poignées pour définir l’ordre des groupes et des styles au sein des groupes. Utilisez les icônes d’ajout ou de suppression pour ajouter ou supprimer des groupes ou des styles dans les groupes.

Attention :

Pour pouvoir fonctionner, les classes CSS (ainsi que toute classe JavaScript nécessaire) configurées en tant que propriétés de style d’une stratégie de composants doivent être déployées comme bibliothèques clientes.

Configuration

Remarque :

La version 2 des composants principaux est entièrement équipée pour tirer parti du système de style. Elle ne nécessite aucune configuration supplémentaire.

Suivez les étapes ci-dessous pour activer le système de style pour vos propres composants personnalisés ou pour étendre les composants principaux de la version 1 afin d’utiliser la fonctionnalité.

Pour qu’un composant fonctionne avec le système de style d’AEM et affiche l’onglet Style dans sa boîte de dialogue de conception, le développeur de composants doit inclure cet onglet à partir du produit, avec les paramètres suivants sur le composant :

  • chemin d’accès = "/mnt/overlay/cq/gui/components/authoring/dialog/style/tab_design/styletab"
  • sling:resourceType = "granite/ui/components/coral/foundation/include"

Une fois le composant configuré, les styles définis par les auteurs de pages seront automatiquement insérés par AEM sur l’élément de décoration qu’AEM ajoute automatiquement autour de chaque composant modifiable. Le composant lui-même n’a besoin d’effectuer aucune autre action pour que cela se produise.

Styles avec noms d’éléments

Les développeurs peuvent aussi configurer une liste de noms d’éléments autorisés pour les styles du composant avec la propriété de table de chaînes cq:styleElements. Ensuite, dans l’onglet Styles de la stratégie, dans la boîte de dialogue de conception, l’auteur de modèles peut aussi choisir un nom d’élément pour chaque style. Cela permet de définir le nom de l’élément wrapper.

Cette propriété se définit sur le nœud cq:Component. Par exemple :

  • /apps/weretail/components/content/list@cq:styleElements=[div,section,span]

Attention :

Évitez de définir des noms d’éléments pour les styles pouvant être combinés. Lorsque plusieurs noms d’éléments sont définis, l’ordre de priorité est le suivant :

  1. HTL est prioritaire sur le reste : data-sly-resource="${’path/to/resource’ @ decorationTagName=’span’}
  2. Ensuite, au sein de plusieurs styles actifs, le premier style de la liste des styles configurés dans la stratégie du composant est sélectionné.
  3. Enfin, le nom cq:htmlTag / cq:tagName du composant est considéré comme une valeur de repli.

Cette capacité à définir des noms de styles est utile pour les composants génériques, tels que le conteneur de mise en page ou le composant Fragment de contenu. Cela permet de leur donner davantage de sens.

Cela permet par exemple d’attribuer au conteneur de mise en page des balises comme <main>, <aside>, <nav>, etc.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne