Zuerst mal natürlich if ($_REQUEST['content'] === 'start'). $content ist nur dann direkt verfügbar, wenn du dir Autoglobals erzeugen läßt - und das ist erstens nicht auf allen Servern eingerichtet und zweitens kann es zu Sicherheitslücken führen, wenn man nicht aufpaßt.
Falls du dir $content aus dem Userinput selbst erzeugt hast ist die Stelle natürlich in Ordnung.


Von deinem System auf meins umzusatteln ist gar nicht so schwer - immerhin funktionieren beide dadurch, daß an der entsprechenden Stelle die Templates geladen werden. Anstatt einfach die Datei zu inkludieren lädst du sie in eine Variable und fügst die in das Haupttemplate ein, das du am Ende ausgibst.

Mein System basiert ja darauf, daß du keinen Output hast, den du nicht explizit anforderst (dadurch, daß du ein echo $bla; machst). Du lädst also erst die Grundseite als Template und fügst dann dort alle weiteren Teile ein. Um also eine andere Seite zu "inkludieren" setzt du einfach an der entsprechenden Stelle in der Grundseite einen Platzhalter und packst da per str_replace() die geladene Seite rein.


BTW, was meinst du mit "werden bei Templates nicht per Variable angesteuert"? Templates sind völlig unabhängig davon, wie man den Inputverarbeitet - und sowohl das, was ich mache als auch das, was du da beschreibst sind Templates; meine sind nur abstrakter gehalten.