Abonnement à ma liste de contacts

Etoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactives
 

Je me suis demandé, aujourd'hui, si notre CMS favori Joomla intégré en son cœur, un outil de templating intégré.

Rappel sur le templating

 Comme cette terminologie au sein d'un système de gestion de contenu, peut poser un petit souci de sens, je vais commencer par vous rappeler ce qu'est le templating.
Rien à voir avec les templates de Joomla,  la notion de templating doit être considéré dans la vue d'un modèle MVC,.
Le principe de la template permet d'avoir un modèle graphique qui va pouvoir être réutilisé en fonction de différents contenus. Dans le modèle nous allons injecter des chaînes de caractères qui correspondent à ce que nous souhaitons.
Pour faire une analogie extrêmement claire, c'est le même principe qu'un publipostage dans un logiciel de traitement de texte : dans votre logiciel de traitement de texte vous allez faire un "modèle" graphique et/ou textuel de ce que vous souhaitez afficher. A côté de cela, vous allez avoir une source de données, avec des champs définis, et chacun des champs va pouvoir être injecté à l'endroit précis où vous lui avez dit? C'est avec ce système que nous fabriquons des publipostage.
Le templating repose sur le même principe, aller à seule différence près que nous allons injecter au sein d'une page HTML, des chaînes de caractères spécifiques.

La question

Ma question de départ était de savoir si, lorsque nous téléchargeons un Joomla, nous avons déjà intégré une des bibliothèques PHP de templating.
D'après les recherches et ensemble des questions que j'ai posé, la réponse est négative.

Appliquer un système de templating.

Je ne vous cacherai pas que je ne suis pas allé trop loin dans mes recherches de bibliothèques externes de templating, je vais réutiliser je pensecelle que je connais un peu : smarty.
Pour y avoir déjà un petit peu utilisé dans une vie antérieure à Joomla, cet outil vous permet, à la manière de l'utilisation de shortcode dans Joomla, de spécifier à certains endroits les informations que vous souhaitez afficher.
A l'heure où j'écris cet article, je n'ai qu'une vague notion de l'outil. En effet, je l'avais antérieurement regarder de manière très succincte il y a déjà quelques années, car je souhaitais déjà m'y mettre dans un autre contexte de programmation PHP pure et dur.
En regardant et un documentation de Smarty, que vous pouvez trouver en plusieurs langues, en PDF ou au format ZIP, vous pouvez vous rendre compte que le templating avec ses outils et relativement complexe, vous pouvez même intégrer avec des conditionnelles.
Je ne rentrerai pas dans plus de détails, une documentation au format PDF et véritablement très bien faite, mais vous pourrez voir que dans mon cas, je ne vais utiliser une toute petite partie de l'outil. Son utilisation est relativement simple, il suffit de l'intégrer avec un require_once, cette commande ayant pour but de l'intégrer une seule fois dans votre projet, même si vous faites de nouveaux appels à cette bibliothèque, cette commande require_once ne téléchargera et la bibliothèque que la première fois.

 Smarty  vraiment ?

 Si je propose cet outil, c'est parce que je pense, selon moi, que c'est un Rolls-Royce de outils de templating. Cependant, je ne suis encore pas sûr d'utiliser cette bibliothèque particulière car il en existe d'autres, relativement plus simples d'utilisation, mais avec des conditions beaucoup plus simples, elles aussi.

En effet, dans mon cas, je cherche simplement à créer des modèles et à les remplacer par d'autres chaînes de caractères. Pour l'instant je ne suis encore pas complètement certain du choix de mon outil de templating, l'avenir me le dira.

 

Vous retrouverez ici tous mes articles explicatifs de mes concepts, mes résultats d'analyses techniques m'ayant permi d'aboutir à un fonctionnement de mes applicatifs très fonctionnel

Rapport sondage marche

Voici le rapport statistique du sondage (auquel vous pouvez toujours répondre) que j'ai lancé sur le sujet

Mon GitHub

Voyant que l'intégration du flux RSS ralentissait tout mon site, voisi le simple lien de mon flux RSS : Mon GitHub