Bonjour tout le monde.
Je travaille actuellement sur la réalisation d'un cahier des charges d'un CMS.
Le CMS devra être skinnable, autant avec des designs Full-CSS qu'avec des designs à base de tableaux (avec une légère préference pour les designs Full-CSS).
Sur le CMS sur lequel je contribuais activement (Nuked-Klan), la gestion des thèmes était faite de la manière suivante :
Un dossier pour chaque thèmes : un fichier de style (CSS), un fichier pour la définition des couleurs principales, les images et un fichier theme.php.
Ce fichier theme.php comporte plusieurs fonctions : une fonction pour l'affichage de la partie haute du site, une fonction pour l'affichage des blocks du menu gauche, pareil pour le menu droit, un fonction pour l'ouverture de l'affichage de la partie centrale et une fonction pour sa fermeture, une fonction pour l'affichage des news et une fonction pour l'affichage du pied de page.
Donc chacunes de ces fonctions étaient chargées d'afficher une partie du code HTML de la page.
Certaines fonctions étaient donc repetées plusieurs fois (par exemple l'affichage des news).
Avec ce système, le designeur ne s'occupe que du thème, pas de l'interface du CMS, qui ne peut être changer modif le code même du CMS (en gros, impossible de modif la présentation de l'administration ou de la présentation des articles. On peut peut-être modif les couleurs et la tailles, par le biais du CSS, mais pas la structure. Par contre il y a une exception pour les news qui doivent être définies dans le thèmes, mais ça c'est juste un choix de Nuked-Klan pour ne pas imposer une modèle fixe de présentation de News).
Ce système est peut-être pratique pour le développeur, mais pour le designeur, ça l'est moins et surtout, je ne trouve pas ça très propre comme système.
Ensuite, j'ai pensé au système comme celui de PHPBB, des fichiers de templates, qui seront ensuite parsés.
Mais bon y a tout de même un bon paquet de fichiers de template, donc pour chaque thème, le designeur doit se taper tous les fichiers de l'interface.
Sinon, pour Spip, avec ses squelettes, le système est assez proche de celui de PHPBB, non ?
Pour V-Bulletin, on définit absolument toute l'interface depuis le panel d'admin, on peut modifier n'importe quelle partie de ce qui est affichée.
L'idée est pas mal mais bon, ce n'est pas très pratique pour les designeurs.
Sinon, le système de Typo3 a l'air assez spécial, je sais pas si vous le connaissez ?
Voilà, j'aimerai donc votre avis la dessus, si vous avez une idée de système de thème. Je souhaiterai faire quelque chose d'assez léger, où la création de thème n'est pas trop dure, et quelque chose qui me permettrai d'avoir quelque chose de standard, et qui supporte les designs full-css et les designs à base de tableaux.
Le CMS sera réalisé dans une optique de légerté et de flexibilité. Presques toutes les fonctions seront plugins et modules. Le moteur du CMS respectera les standards XHTML.
Merci d'avance pour vos réponses.
Je travaille actuellement sur la réalisation d'un cahier des charges d'un CMS.
Le CMS devra être skinnable, autant avec des designs Full-CSS qu'avec des designs à base de tableaux (avec une légère préference pour les designs Full-CSS).
Sur le CMS sur lequel je contribuais activement (Nuked-Klan), la gestion des thèmes était faite de la manière suivante :
Un dossier pour chaque thèmes : un fichier de style (CSS), un fichier pour la définition des couleurs principales, les images et un fichier theme.php.
Ce fichier theme.php comporte plusieurs fonctions : une fonction pour l'affichage de la partie haute du site, une fonction pour l'affichage des blocks du menu gauche, pareil pour le menu droit, un fonction pour l'ouverture de l'affichage de la partie centrale et une fonction pour sa fermeture, une fonction pour l'affichage des news et une fonction pour l'affichage du pied de page.
Donc chacunes de ces fonctions étaient chargées d'afficher une partie du code HTML de la page.
Certaines fonctions étaient donc repetées plusieurs fois (par exemple l'affichage des news).
Avec ce système, le designeur ne s'occupe que du thème, pas de l'interface du CMS, qui ne peut être changer modif le code même du CMS (en gros, impossible de modif la présentation de l'administration ou de la présentation des articles. On peut peut-être modif les couleurs et la tailles, par le biais du CSS, mais pas la structure. Par contre il y a une exception pour les news qui doivent être définies dans le thèmes, mais ça c'est juste un choix de Nuked-Klan pour ne pas imposer une modèle fixe de présentation de News).
Ce système est peut-être pratique pour le développeur, mais pour le designeur, ça l'est moins et surtout, je ne trouve pas ça très propre comme système.
Ensuite, j'ai pensé au système comme celui de PHPBB, des fichiers de templates, qui seront ensuite parsés.
Mais bon y a tout de même un bon paquet de fichiers de template, donc pour chaque thème, le designeur doit se taper tous les fichiers de l'interface.
Sinon, pour Spip, avec ses squelettes, le système est assez proche de celui de PHPBB, non ?
Pour V-Bulletin, on définit absolument toute l'interface depuis le panel d'admin, on peut modifier n'importe quelle partie de ce qui est affichée.
L'idée est pas mal mais bon, ce n'est pas très pratique pour les designeurs.
Sinon, le système de Typo3 a l'air assez spécial, je sais pas si vous le connaissez ?
Voilà, j'aimerai donc votre avis la dessus, si vous avez une idée de système de thème. Je souhaiterai faire quelque chose d'assez léger, où la création de thème n'est pas trop dure, et quelque chose qui me permettrai d'avoir quelque chose de standard, et qui supporte les designs full-css et les designs à base de tableaux.
Le CMS sera réalisé dans une optique de légerté et de flexibilité. Presques toutes les fonctions seront plugins et modules. Le moteur du CMS respectera les standards XHTML.
Merci d'avance pour vos réponses.