Ik wil de gebruiker van mijn cms de mogelijkheid geven om zelf templates, stylesheets en javascript bestanden aan te maken via de browser.
De templates worden opgeslagen in een eenvoudige database tabel (template_id, name, description, body). Hier een overzicht uit het CMS:

Omdat ik de template in een database tabel opsla (in de kolom 'body'), is het makkelijk andere informatie (zoals description) mee op te slaan.
Nu wil ik ook de css bestanden via de admin bewerkbaar maken. Tot nu toe sla ik de css bestanden niet in een database op. Ik open in een textarea de .css vanaf de server. Nadeel hiervan is dat ik volgens mij geen extra informatie bij het bestand kan opslaan, zoals een description. Toch wil ik ook voor de css bestanden een overizicht kunnen maken als ik bij de templates heb. Nu kan dit imho op twee manieren:
De templates worden opgeslagen in een eenvoudige database tabel (template_id, name, description, body). Hier een overzicht uit het CMS:

Omdat ik de template in een database tabel opsla (in de kolom 'body'), is het makkelijk andere informatie (zoals description) mee op te slaan.
Nu wil ik ook de css bestanden via de admin bewerkbaar maken. Tot nu toe sla ik de css bestanden niet in een database op. Ik open in een textarea de .css vanaf de server. Nadeel hiervan is dat ik volgens mij geen extra informatie bij het bestand kan opslaan, zoals een description. Toch wil ik ook voor de css bestanden een overizicht kunnen maken als ik bij de templates heb. Nu kan dit imho op twee manieren:
- een soortgelijke tabel voor css bestanden maken als ik bij de templates heb. De gebruiker update eigenlijk de database, en automatisch wordt een nieuwe .css op de server gezet. Ik kan nu extra info in de database opslaan;
- de css bestanden niet in een database opslaan maar meta-informatie toevoegen aan het fysieke serverbestand.
- Wat is volgens jou de beste methode? Of ken je een betere?
- Heeft iemand wat nuttige links over het opslaan van meta informatie met bestanden in php? Ik weet niet eens zeker of dit mogelijk is, maar kon er via de search niets over vinden.
"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."