Man muss lange nicht jede Einzelseite in der config nennen. Ich hole fast alle variablen Werte für die index.php (Titel, Überschrift, Body-ID etc.) aus dem array, der die Werte für die Navi liefert, sowie aus dem jeweiligen Dateinamen. Ganz selten muss ich zusätzlich z.B. eine individuelle Überschrift definieren.
Um Missbrauch (z.B. durch manuelle Eingabe nicht existierender Dateinamen) zu verhindern, prüfe ich nach folgendem Prinzip:
PHP-Code:
$seite = $_GET['seite'];
$inhalt = 'inhalte/'.$seite.'.inc.php';
if(file_exists($inhalt)) {
...
Wenn die aufgerufene Datei nicht existiert, kommt die Fehlerseite und sendet 404 (man kann sich zusätzlich absichern, indem man Punkte innerhalb der aufgerufenen Dateinamen verbietet). Dadurch bleibt meine config relativ klein, da eben nicht jede Einzelseite explizit genannt werden muss.