Vue
Une vue (view) est, dans Jahia, le code qui produit, à partir d’un contenu conservé dans le référentiel, le HTML reçu par le visiteur. Elle décide comment un article, une offre ou un événement apparaît à l’écran, quelles propriétés sont montrées, dans quel ordre et avec quelle mise en forme. Associée à un contenu, elle produit un composant, le fragment HTML que voit le visiteur.
Définition et fonctionnement
La vue sépare le contenu de sa présentation. Un même contenu peut s’afficher de plusieurs façons, comme une carte courte dans une liste, une version complète sur sa propre page ou un encadré dans la colonne d’une autre page. Le contributeur saisit une seule fois. Une refonte graphique consiste à réécrire ce code d’affichage, pas à ressaisir les contenus.
Ce code est écrit par les développeurs et livré dans un module, en JSP (les pages web de Java) ou, dans un module JavaScript (possible depuis Jahia 8.2), en React avec JSX ou TSX. Le template organise l’ossature de la page, la vue rend chaque contenu placé à l’intérieur. Selon les vues déployées pour le type de contenu, plusieurs rendus peuvent être proposés pour un même contenu.
Documentation Academy : les modules JavaScript de Jahia et leur système de templates et de vues
Sources : Interoperability with Java, Jahia Academy (page datée du 24 octobre 2024).
Termes liés : Template · Content Template · Composant · Content item · Type de contenu
Ressources sur ce terme
- Customer Data Platforms (CDPs) : guide pratique pour une expérience client unifiée
- 4 étapes pour personnaliser le parcours web de vos clients
- CMS headless ou traditionnel : comment bien choisir
- CMS Java headless - Guide pour les développeurs
- Comment choisir une plateforme d'expérience digitale (DXP) ?
- Comment connecter Salesforce à votre CMS : défis & enjeux
La vue et le template : les différences
La vue rend un contenu. Le template rend l’ossature de la page. Le composant est le résultat visible de l’association entre un contenu et sa vue.
| Notion | Ce qui la distingue |
|---|---|
| Template | Le template définit la mise en page d’ensemble et les zones de contribution. Le code de rendu n’agit que sur un contenu à l’intérieur de ces zones. |
| Composant | Un composant associe un contenu (fondé sur un type) et son rendu pour produire un fragment HTML destiné aux visiteurs. |
| Content Template | Un template de contenu donne une page complète à un contenu qui n’est pas une page. Il peut s’appuyer sur les rendus déjà prévus pour ce contenu. |
La vue en pratique
Une fiche de glossaire apparaît dans l’index sous forme de carte (terme et phrase de résumé) et sur sa propre adresse sous forme de page complète. Les deux affichages lisent le même contenu au moyen de deux vues différentes. Corriger le résumé dans Content Editor met à jour les deux à la fois.
Un nouveau rendu se teste sur des contenus réels avant sa mise en ligne, avec des champs facultatifs vides, des textes longs, plusieurs langues et plusieurs tailles d’écran.
Questions fréquentes
Afficher un contenu de deux façons oblige-t-il à le dupliquer ?
Non. Un même contenu peut être rendu par plusieurs vues, chacune adaptée à son contexte, sans copie. C’est précisément leur rôle. Le contributeur ne maintient qu’une version. Dupliquer un contenu pour obtenir un autre affichage est un signe que le rendu manquant n’a pas été développé. C’est aussi une source d’incohérences.
Faut-il réécrire les vues pour passer à React ?
Depuis Jahia 8.2, les modules JavaScript permettent d’écrire vues et templates en JSX ou TSX, rendus côté serveur. Passer à React suppose d’écrire de nouveaux rendus dans ce format, puisqu’une vue transforme le contenu stocké en HTML. La migration peut être progressive : Jahia prend en charge modules JavaScript et Java sur un même site, voire sur une même page, et l’Academy recommande un seul type de module pour un projet neuf. L’équipe technique cadre le rythme.