Moin,
auf der anderen Seite bin ich so nicht wirklich flexible, sollten irgendwann weiter Sprachen hinzukommen. Wie geht ihr in so einem Fall vor?
Also wenns nur ums Speichern der Inhalte geht: Ich benutze das Muster Entity, Attribute, Value. Und das lässt sich auf genau 3 Spalten abbilden, d.h., egal welche und wieviele Attribute (title, descr, class, css, js, language....) eine Seite hat, es sind immer 3 Spalten. Und es ist auch egal, ob dieser abstrakte Datentyp in MySQL gespeichert wird oder in einer Datei.
Für bestimmte Attribute stellt die Konfiguration einen Default bereit. Also, wenn für die auszuliefernde Seite css= oder js= nicht angegeben ist, greifen die Defaults und für die Sprache ist lang=de der Default.
.pl