voilà c'est en fait un mix de fichier de stockage et de bdd flatfile
tout mettre en bdd rendrait le cms à moyen terme lourd puisque les fichiers qui servent de bases deviendraient très lourd
j'ai testé des cms de ce type par exemple ou le fichier qui sert de base faisait 30 méga rapidement, autant dire qu'il devient inutilisable, consomme à mort, très lent, bref pas terrible
moi ce que j'ai fait justement pour palier à ceci, je me sert d'une base uniquement pour les variables de paramètre type oui/non position des menu, et titre, ensuite le contenu pur de chaque page a son propre fichier php
ainsi même si on créait mille pages les fichiers de bdd resteront de petite taille en fait une page = une ligne de quelques caractères
en prime et ça j'y tenais, à contrario de nombre de cms en flatfile sur nanomus je ne voulais pas que le site tape sans arrêt sur ce fameux fichiers bdd flafile, j'ai donc fait en sorte que tout soit mis en cache au moment même ou l'admin fera ses modification
par exemple, je crée une nouvelle page, puis je positionne son lien dans un des trois menu ou les trois, ben pour résumer à ce moment là le cms fait tout les calculs qui vont bien, les compilent et les met en fichier cache
de ce fait, les trois le menu sont en HTML pur aussitôt
une fois coté utilisateur le cms n'a donc plus à se connecter aux bases existantes
pour résumer on a deux bases de données:
- une pour les pages créées ( id, titre, menus ... )
- une pour la gestion des menus ( id, titre, position, ... )
franchement je me suis régalé à faire ce nanomus 2 et le système de base de données flatfile m'a réellement séduit de par sa terrible efficacité, ça serait impossible de tirer de telle performances avec mysql sur un site de cette ampleur
bien évidemment sur du très gros contenu type base d'un giga mysql devrait être plus solide, je dis devrais car je n'ai pas encore le retour d'expérience sur ça ... mais ça va venir j'en suis maintenant convaincu

en fait sur le systême flatfile on peut lire tout et son contraire ( et surtout n'importe quoi ), car linux est basé sur quoi pour obtenir justement sa différence de performance avec windows ? je te le donne dans le mille : flatfile

ben oui nunux est basé sur du flafile et a des performances de feu, d'ailleurs mysql c'est quoi ? une base de données flafile !
pire même mysql utilise 3 fichiers flafile pour UNE seule table, ce qui veut dire qu'un cms de 10 tables sql à en réalité 30 fichiers flafile

alors que ce premier jet n'en a qu'Un par table
j'ai mis en place un premier jet avec nanomus 2, je me suis donc créé un premier layer flafile, mais je compte reprendre ceci dans l'avenir pour un faire un layer de ouf avec lequel tout est faisable aisément et ainsi pouvoir créer un cms du type minimus en flatfile et pour quoi par un jour tendre vers un maximus flatfile
dans ce type de cms à mes yeux il n'existe qu'un seul produit c'est guppy ( on aime/ on aime pas peu importe ), c'est le seul gros cms capable de faire ce que font nombre de cms sans avoir recours à mysql
allez bon week end il fait un temps radieux ici je vais en profiter un peu ...