En gros c'est un cms ultra modulaire, chaque module est une classe qui implémente la même interface. J'ai définit l'interface de façon à pouvoir utiliser un module comme une page complète, ou à n'importe quel endrois dans une page, ou encore dans une popup (par exemple un profile d'un membre peut être vu en pleine page, ou dans le coin d'un commentaire du membre avec un template adapté).
Donc il y a par exemple le module wiki qui permet de faire une page de base, le module news qui en hérite et qui ajoute juste un champs pour rajouter des liens, et le module liste de news qui hérite aussi du module wiki pour pouvoir mettre un titre/description/texte en haut de la liste des news. Si on a un module liste de forums, il suffit de faire une page /forum de type "liste de forum" , et la page /forum listera toutes les pages /forum/* à la façon d'un forum.
Le tout repose sur plusieurs libs de mon cru:
- Un générateur/vérifieur de formulaires qui permet de facilement ajouter des champs de formulaire d'une classe hérité à l'autre et qui fournis des widgets spéciaux (genre sélecteur de couleur, image anti bot, etc...)
- Une lib de templates qui compile les templates, un peu comme smarty ou phpBB3, avec une sorte de container à modules façon gtk qui permet par exemple au module wiki d'ajouter un module "plan de la page" quelque part sous le menu, ou d'ajouter le module commentaires en bas de la page.
- Un parseur wiki qui fait du code xhtml sémentiquement correcte et qui génère un plan de la page à partir des <h>.
Voila voila :)
ça fait un moment que je suis dessus, et après avoir testé des dixaines de trucs je crois que j'ai bien réussis à coder ce que je voulais, donc la première release devrais pas être trop trop longue à venir.
[^] # Re: En php5 ?
Posté par freeture . En réponse au journal Cherche hébergeur. Évalué à 2.
Donc il y a par exemple le module wiki qui permet de faire une page de base, le module news qui en hérite et qui ajoute juste un champs pour rajouter des liens, et le module liste de news qui hérite aussi du module wiki pour pouvoir mettre un titre/description/texte en haut de la liste des news. Si on a un module liste de forums, il suffit de faire une page /forum de type "liste de forum" , et la page /forum listera toutes les pages /forum/* à la façon d'un forum.
Le tout repose sur plusieurs libs de mon cru:
- Un générateur/vérifieur de formulaires qui permet de facilement ajouter des champs de formulaire d'une classe hérité à l'autre et qui fournis des widgets spéciaux (genre sélecteur de couleur, image anti bot, etc...)
- Une lib de templates qui compile les templates, un peu comme smarty ou phpBB3, avec une sorte de container à modules façon gtk qui permet par exemple au module wiki d'ajouter un module "plan de la page" quelque part sous le menu, ou d'ajouter le module commentaires en bas de la page.
- Un parseur wiki qui fait du code xhtml sémentiquement correcte et qui génère un plan de la page à partir des <h>.
Voila voila :)
ça fait un moment que je suis dessus, et après avoir testé des dixaines de trucs je crois que j'ai bien réussis à coder ce que je voulais, donc la première release devrais pas être trop trop longue à venir.