Liebe Freunde,
Ich bin begeistert davon, wie übersichtlich alles durch das Inkludieren externer Texte via PHP in die Hauptseite wird. Ich kann den Artikel oder Bericht separat lagern und bearbeiten, ohne zig Zeilen in der Hauptdatei zu durchsuchen.
Nun möchte ich herausfinden, ob man mit PHP include nicht gar ganze Elemente zentral lagern und importieren kann! Lasst mich erklären, wie ich darauf komme, indem ich mein Problem schildere.
Meine Lernwebsite hat viele Seiten.
Index (Home)
Kategorie 1
Unterkategorie 1
Unterkategorie 2
Unterkategorie 3
Kategorie 2
Unterkategorie 1
Unterkategorie 2
Kontakt
About
Und je weiter die Seite wächst, desto mehr Seiten werden es. Ich möchte natürlich, dass alle Seiten, abgesehen vom Inhalt der <div content> gleich aufgebaut sind. Oben der header, dann die navigation, links seine Sidebar, rechts eine Sidebox, darunter eine Ad-Box, in der Mitte der Content, unten der Footer etc. Bislang habe ich die Indexseite nach meinen Belieben gestaltet. etliche Zeilen Code. Okay. Jetzt könnte ich hingehen, copy paste in alle weiteren Seiten. Bloß, dass der Content anders ist.
Was jedoch, wenn ich mich entscheide, bloß dieses eine Bisschen zu verändern? Den Platz von Boxen vertauschen oder etwas anderes? Müsste ich jede einzelne Seite bearbeiten und dort die Elemente manuell ändern? Ich meine, analog dazu dient CSS ja als die universelle Datei, sodass man alle Style-Geschichten auslagert in eine separate Datei, die dann für alle gültig ist.
Dasselbe schwebt mir vor mit dem generellen Aufbau. So stelle ich mir vor, dies zu lösen:
Ich lege einen Ordner "Architecture" an. Hier erstelle ich folgende beispielhafte Dateien:
header.txt
body.txt
navigation.txt
sidebox.txt
sidebar.txt
content_area.txt
footer.txt
jede dieser Dateien befülle ich mit den jeweiligen Scripts aus der ursprünglichen Index.html. Nur dass nun alles separiert ist.
Nun brauche ich jede weitere Seite nur noch anzuweisen:
<? php
include(header.txt)
?>
<? php
include(body.txt)
?>
<? php
include(navigation.txt)
?>
und so weiter und schon wird aus einer universellen Datei importiert. Wenn ich nun beschließe, der Navigation ein Element hinzuzufügen, so tue ich es in der universellen Datei und schon gilt das für alle anderen weiteren Seiten. Ob es 10, 100 oder 1000 seien.
Bin ich da mit diesem Ansatz auf der richtigen Spur?
Liebe Grüße