Hallo Felix!
Wir reden leider immer noch aneinander vorbei! Du versteifst Dich auf den Gedanken, die index.php solle die Template-Datei sein. Alle anderen Seiten würden dann per Query-String immer über diese index.php ausgegeben.
Genau so soll es aber nicht sein. Jede Seite soll durch eine eigene Datei repräsentiert werden, d. h., um unterschiedliche Seiten anzuzeigen, sollen auch unterschiedliche URLs in die Browserleiste eingegeben werden, der Grund hierzu spielt an dieser Stelle keine Rolle. Die Folge ist also, daß die Templatedatei von den jeweiligen Seiten eingebunden werden soll und selbst niemals direkt aufgerufen wird. Die Template-Datei muß an den Stellen, wo sie variable Inhalte ausgeben soll, fertigen HTML-Code geliefert bekommen, der von den jweiligen Seiten generiert wird. Daraus resultiert die Anforderung, daß aus den eigentlichen Inhaltsseiten ausgelagerte Inhalte selbst wiederum an die Inhaltsseiten HTML-Code liefern müssen, weil sie nicht inkludiert, sondern nur mit file_get_contents() eingebunden werden können.
Ist das Problem jetzt klarer?