Man müsste, abgesehen vom Javascript Code, auch an den PHP Dateien was ändern, da diese ja (bps.w die content/intern/mediadaten.php) nicht "direkt" aufgerufen werden können.
Und komplett, also via ?content=/intern/medidaten hätte man ja nix gespart, da ja doch wieder "alles" berechnet und ausgegeben würde.
Evtl eine ajax.php in das Hauptverzeichnis, die dann beim Aufruf von ajax.php?content=/intern/mediadaten die header.php und menues und footer etc weglässt, und nur functions.lib/layout.lib (für head()/foot() ) einbindet, und natürlich die entsprechende "Content" Datei.
Ganz grob gesagt, in der header.php und footer.php um den "Inhalt" ein <div> rum
, müssen nur noch alle Links umgeschreiben werden, dass diese eben den Javasript Aufruf machen.
Wäre aber so keine schöne Lösung, bspw.fehlt dann noch Feedback für den User (Ladeanimation, wenns mal wiederlänger dauert), es muss quasi jeder Link manuell angepasst werden, funzt dann auch nur bei Usern mit Javascript aktiviert usw.
Evtl. ist da sowas wie jQuery hilfreich, damit ist es auch möglich, ohne die Links zu ändern, Regeln zu definieren, und das JS fügt den Links nachträglich die AJAX Funktionalität hinzu, jemand der JS deaktiviert hat, bei dem bleibt halt alles wie gehabt.
Auch Animationen, bspw. dass sich der "alte" Inhalt "einrollt", der neue dann ausrollt usw., Ladeanimation wäre damit einfacher.
Um eine extra PHP datei wird man aber auch so nicht rumkommen.
Wenn du damit Traffic sparen willst, bringt das aber vermutlich nicht so sonderlich viel, da die paar KB von header/menus/footer vermutlich nicht den Großteil ausmachen, sondern eher Grafiken, und die Headergrafik wird ja bei den meisten Besuchern gecached bspw.