La prochaine version de 299Ko, qui sera la 1.3.0, est à venir dans quelques semaines. Non, le projet n'est pas mort, même si le forum tourne au ralenti (si le CMS n'a pas de problème, il n'y a pas de bug à remonter 😁), le CMS flat-file continue son chemin après la rentrée.
On fait le point des nouveautés à venir plus bas.
Vacances pour tout le monde
J'avoue que j'ai un peu lâché la barque pendant les vacances : Envie de me reposer après une année riche professionellement, j'ai décroché d'internet pendant lus d'un mois. Pour la première fois je crois, j'ai osé partir sans emmener un PC. Je sais, ça ne se fait pas de partir en vacances sans un membre de la famille, mais ça m'a fait du bien, et ma famille aussi.
Je ne sais pas si c'est ça qui a fait fuit le gens sur le forum, mais je n'avais rien à dire, aussi je n'y ai rien mis. J'espère qu'il reprendra vie, et pas qu'à cause des bugs :D
Ce qu'il y a à venir
J'ai bien avancé sur la version 1.3.0, et j'ai pu implémenter pas mal de choses qu'il restera à mettre dans toutes les parties du site :
Modèle - Vue - Controleur
J'ai commencé avec les plugins blog, page et contact de passer 299Ko sur un modèle MVC. Le modèle MVC - Modèle / Vue / Contrôleur - est destiné à séparer en 3 fonctions distinctes les fichiers qui font le traitement de la requête et de la logique utilisateur (le contrôleur), ceux qui gèrent les données (les modèles), et enfin ceux qui affichent le rendu à l'utilisateur (les vues).
Cette architecture fait qu'il est bien plus facile de maintenir un logiciel puisque tout y est séparé.
Le routeur
Pour les non initiés au PHP, un routeur est une classe qui va rediriger les requêtes ( l' URL) demandées vers les fichiers PHP qui seront chargés d'analyser la demande (contrôleurs).
En gros, le routeur détermine où l'utilisateur souhaite aller (un article de blog par exemple) et redirige vers le contrôleur du blog. Ce contrôleur va demander au modèle de lui donner les infos de l'article, et les enverra à la vue qui affichera le tout.
Pour vous, ça ne changera pas grand chose si vous ne développez pas de plugins etc. Mais le développement du CMS en sera simplifié.
Templates et réponses
Dans le même esprit, le moteur de templates a encore évolué. S'il était resté inutilisé pendant un an, il est à présent indispensable pour les 3 plugins cité précédemment. Basé sur une syntaxe similaire à Twig pour ceux qui connaissent, en bien plus léger, il n'en reste pas moins performant et va faciliter le travail de ceux qui souhaitent faire un thème et qui ne sont pas à l'aise avec le PHP.
Pour les réponses (Responses), il s'agit simplement de la réponse, qui contient les templates (les morceaux de vue), que doit donner un contrôleur pour afficher toute la page. Tout cela est fait dans l'optique de pouvoir développer un système de cache, qui accélèrera encore votre site en soulageant le serveur.
Langues
Tout ne sera pas fait tout de suite, mais à la sortie de cette prochaine version, il sera possible de choisir une langue pour votre site. Il reste le plus gros du travail à faire, c'est à dire traduire tout le site et les plugins, mais la fonctionnalité est implémentée, il n'y a plus qu'à.
D'ailleurs, je tiens à dire que si quelqu'un souhaite participer à cette tâche, il n'y a absolument pas besoin de savoir programmer, juste une petite connaissance en anglais et du temps. N'hésitez pas ;)
Menu admin
Le menu d'administration a été légèrement revu avec la mise en place d'icônes et surtout, la possibilité de réduire le menu pour les ordinateurs à petits écrans en ne laissant que les icônes.
Sidebar
Coté public, une Sidebar a été mise en place pour les plugins qui en auraient besoin. Inutilisé encore, elle est déjà disponible simplement grâce à la function show::addSidebarPublicModule()
que vous pouvez même ajouter dans votre thème :
show::addSidebarPublicModule('Je suis un module',
'Je peux mettre ce que je veux ici, du HTML, des liens, image, etc etc.
'
. '');
`
Cette fonction ajoute une colonne supplémentaire (par défaut à droite, mais changeable dans le CSS). On peut imaginer simplement des liens vers des blogs "amis", un lien vers un don ou tout simplement les catégories du blog (oui oui c'est prévu pour plus tard :) ).
Pour l'heure
Je fais mon possible pour pouvoir vous proposer cette version. Il ne reste qu'à tester et corriger les bugs. D'ailleurs, tout le monde peut tester la version en cours de développement en allant la récupérer sur la branche 1.3.0 du GitHub de 299Ko (à des fins de test uniquement bien sûr). Je suis preneur de chaque retour, chaque question, tout peut aider à faire avancer cette version, le temps me faisant énormément défaut.
Je vous tiendrai au courant une fois que la version sera prête à être utlisée en production.