Imageur, mon mini CMS Symfony pour site perso statique

A l'origine de mon projet

Je voulais un gestionnaire de carrousels parce qu'il y a beaucoup d'images sur mon site, et ajouter de nouvelles images à la main c'est fastidieux, d'autant que certaines sont en .jpg, .jpeg, .JPG, .JPEG, j'avais souvent des erreurs. Donc j'ai fait une application avec une base de données pour les images et les carrousels, et une programme qui code le carrousel sous forme de fichier PHP pour n'avoir plus qu'à l'inclure sur la page.

Bon alors, quitte à générer des fichiers PHP, pourquoi ne pas entrer le site en base de données, morceau par morceau, et tout générer? Comme ça plus d'erreurs de balises mal fermées, à moins d'en avoir mis dans l'algorithme!

Le Principe

Les éléments constitutifs du site (de ce site, mais c'est adaptable) sont entrés en base de données: articles, sections, à-côté, pied de page, sommaire, carrousels, images... Les articles sont regroupés en rubriques et comportent des sections, ce sont les sections qui ont un contenu, un titre (facultatif) et éventuellement soit un carrousel soit une image isolée.

Le contenu des sections doit être rentré au format HTML, ce qui consiste principalement à l'entourer de balises de paragraphe, à moins qu'on n'aie besoin d'utiliser des balises d'emphase ou de citation, ou autre. Si on ajoute des titres secondaires ils devront être en h3 car les titres de section sont en h2. Le champ "rang" permet de donner un ordre aux sections, celle-ci est la deuxième.

Là, je suis en train de taper ce texte que vous lisez dans le champ "contenu" de mon formulaire de nouvelle section, auquel j'ai accédé depuis le template "show" de l'article "Imageur". Autrefois, quand je tapais du HTML je tapais les codes ASCII des accents, j'espère bien que ce n'est plus nécessaire!

Quand j'aurais terminé de l'écrire, j'enregistrerai cette nouvelle section et je re-génèrerai l'article (le fichier PHP) grace à mon service Generator afin que l'article inclue la nouvelle section, à chaque modification de cette section je devrai également la régénérer avec ce même service. Les fichiers générés le sont dans une copie en local de mon site, il suffit ensuite de les mettre en ligne avec un logiciel ftp ou par l'interface ftp de l'hébergeur.

Et pour faire style?

J'ai bien un service CSSGenerator, mais je ne génère pas le fichier css directement. Dans la classe CSS on peut préciser un certain nombre de couleurs et de familles de police, et générer les fichiers Scss correspondants. On a le choix entre deux structures pour le moment, menu en haut en toute largeur ou menu sur le côté à partir de 900px (on génère le fichier scss qui importe les fichiers correspondants). L'appli Imageur sert de test pour le style puisque c'est la qu'on construit le css, avec webpack Encore, une fois app.css construit on peut le copier dans le fichier css d'une instance de la classe CSS (ligne de la table CSS) et l'associer à un article, ou à tous d'un coup.

Textes et dessins de Christine Zedday
Photos Christine Zedday, Alain et Hélène Bache, Boujemaa, Leïla et Nora Zedday

Cette page a été générée automatiquement par Imageur

CSS Valide !