Navigationsleiste - Wie kann man Code sparen?
Martin
- html
0 Markus0 Martin0 Christoph Schnauß
0 Christoph Schnauß0 JürgenB0 Martin
Hallo,
habe folgendes (wahrscheinlich typisches Anfänger-)Problem:
Ich gestalte meine Seite ausschließlich mit Tabellen, ohne den Einsatz von Frames. Links befindet sich eine klassische Navigationsleiste, rechts der eigentliche Seiten-Inhalt (beides eingebettet in eine Tabelle mit zwei Spalten). Nun soll meine Site viele verschiedene Seiten mit unterschiedlichem Inhalt haben, auf jeder von ihnen soll die Navigationsleiste aber unverändert auftauchen.
Muss ich nun den Code der Navigationsleiste auf jeder Seite aufs Neue einfügen oder kann man den auch irgendwie extern in einer Datei speichern und immer wieder einfügen oder gibt es vielleicht eine andere Möglichkeit, um hierbei Code zu sparen?
Das zweite Problem ist auch, wenn ich an der Navigationsleiste etwas verändern will, müsste ich es dann auf jeder dieser vielen Seiten, wo sie auftaucht, tun. Habt Ihr dafür eine Lösung parat?
Freue mich auf Eure Antworten! Vielen Dank schon mal!
Martin
Hallo,
das ist eigendlich ganz einfach. Du speicherst den PHP-Code zur erstellung der Linkleiste in einer PHP-Datei. Diese PHP-Datei fügst du
dann über
include('linkleiste.php');
immer dort ein wo du sie brauchst (wobei du linkleiste.php durch den Dateinamen ersetzen musst unter dem du den Code der sie erzeugt gespeichert hast).
Gruß
Markus
Danke, klingt einleuchtend, aber nehmen wir mal an, dass die Seite komplett ohne PHP laufen soll. Wie wird das denn überall gemacht, vervielfachen die den Code, benutzten sie Frames oder PHP? Gibt's da nicht eine reine HTML-Lösung?
Gruß,
Martin
Hallo,
also wenn du keine Serverseite Programmierung benutzt (z.b. PHP) dann kannst du es mit Frames machen. Sonste müss du den HTML Code für die Navigationsleiste in jeder Datei einfügen.
Gruß
Markus
Hallo,
also wenn du keine Serverseite Programmierung benutzt (z.b. PHP) dann kannst du es mit Frames machen. Sonste müss du den HTML Code für die Navigationsleiste in jeder Datei einfügen.
Oder kurz vor dem Veröffentlichen den Editor deiner Wahl anweisen alle Variablen, die das Menü darstellen in allen HTML Dateien des Projektes durch das Menü zu ersetzen.
Grüße
Jeena Paradies
Hallo Martin,
Gibt's da nicht eine reine HTML-Lösung?
Entweder so wie Jeenas Vorgschlag mit dem Editor. Oder, wenn du den nicht wechseln willst: http://homepages.tu-darmstadt.de/~guentner/html_include
Das elegante an dieser Möglichkeit ist, dass du mit geringem Zusatzaufwand dein Menü so gestalten kannst, dass du ein seitenindividuelles Menü erhältst. Zum Beispiel der aktuelle Menüpunkt hervorgehoben ist, oder kein Link auf sich selbst ist.
Grüße,
Jochen
hallo Markus,
das ist eigendlich ganz einfach. Du speicherst den PHP-Code zur erstellung der Linkleiste in einer PHP-Datei.
Quatsch. Er hat nichts von PHP geschrieben, also scheidet dein Hinweis vollkommen aus.
include('linkleiste.php');
Natürlich wäre das eine einleuchtende Lösung. Dann hätte Markus aber gleich das Topic PHP gewählt.
Grüße aus Berlin
Christoph S.
hallo Christoph,
ja ist mir auch kurz nach meinen Post aufgefallen, aber ab 1 Uhr passieren mir leider schnell sollche kleinen Überleser.
Natürlich wäre das eine einleuchtende Lösung. Dann hätte Markus aber gleich das Topic PHP gewählt.
;)
Gruß
Markus
Hallo,
das ist eigendlich ganz einfach. Du speicherst den PHP-Code zur erstellung der Linkleiste in einer PHP-Datei.
Quatsch. Er hat nichts von PHP geschrieben, also scheidet dein Hinweis vollkommen aus.
Kein Quatsch. Hätte er PHP gewählt wäre z.B. der Vorschlag mit SSI von Jürgen nach deiner Definiton Quatsch. Außerdem hätte er wissen müssen, dass es mit PHP möglich ist. Das gute an diesem Forum ist ja gerade, dass man Lösungen angeboten bekommt, an die man nicht gedacht hat.
Oder welches Thema hätte er wählen sollen, wenn er nicht weiß wie er es machen kann?
Grüße
Marcus
hallo Martin,
Ich gestalte meine Seite ausschließlich mit Tabellen, ohne den Einsatz von Frames.
Auf Frames zu verzichten, ist sicherlich gut, aber Tabellen einzusetzen, ist falsch. Tabellen sind für tabellarische Daten da, aber nicht für solche Dinge wie eine Navigation.
Nun soll meine Site viele verschiedene Seiten mit unterschiedlichem Inhalt haben, auf jeder von ihnen soll die Navigationsleiste aber unverändert auftauchen.
Wenn du dieses sehr unelegante und schwerfällige Konstruktionsprinzip beibehalten willst, bleibt dir nichts anderes übrig, als eben deine Navigation in jede Seite zu schreiben. Irgendeine Einsparung ist dann nicht möglich.
Das zweite Problem ist auch, wenn ich an der Navigationsleiste etwas verändern will, müsste ich es dann auf jeder dieser vielen Seiten, wo sie auftaucht, tun.
Korrekt, das müßtest du so handhaben.
Habt Ihr dafür eine Lösung parat?
Nicht mit "reinem" HTML. Lösungsvorschläge mit anderen Techniken finden sich aber zu Tausenden im Forums-Archiv.
Grüße aus Berlin
Christoph S.
hallo
Auf Frames zu verzichten, ist sicherlich gut, aber Tabellen einzusetzen, ist falsch. Tabellen sind für tabellarische Daten da, aber nicht für solche Dinge wie eine Navigation.
Tabellen sind sehrwohl ein viel verwandtes Mittel zum Seitenlayout. Das als Falsch zu bezeichen halte ich für "falsch". In HTML führen vielen Wege zum Ziel, wobei ein Seitenlayout über Tabellen seine Vorteile hat, aber allerdings auch seine Nachteile.
Gruß
Sven Richard
hallo,
Tabellen sind sehrwohl ein viel verwandtes Mittel zum Seitenlayout.
Daß sie "viel verwendet" werden, sagt noch nichts darüber aus, ob sie dafür da sind. Es gibt sicherlich ein paar Millionen schlecht layouteter Webseiten im Internet.
Das als Falsch zu bezeichen halte ich für "falsch".
Die Lektüre der vielen hundert einschlägigen Threads zum Thema im Forums-Archiv wird dich eines besseren belehren.
Grüße aus Berlin
Christoph S.
Hallo Sven,
... wobei ein Seitenlayout über Tabellen seine Vorteile hat, aber allerdings auch seine Nachteile.
Ich sehe aber nur Nachteile bei tabellenbasiertem Layout. Wenn Du auf Tabellen verzichtest, hast Du eindeutig Vorteile, was Wartbarkeit und Flexibilität Deiner Seiten betrifft.
Viele Grüße
Frank
Hallo Martin,
wenn es dein Provider unterstützt, kannst du Server Site Includes (SSI) einsetzen. Hier werden die "Bausteine" beim Seitenaufruf vom Server zusammengesetzt. Diese Technik ist einfacher als z.B. PHP und belastet den Server auch weniger. Eine weitere Alternative wäre ein (HTML-)Editor, der Includes unterstützt. Hier werden die "Bausteine" vor dem Upload auf deinem Rechner zu fertigen Seiten zusammengesetzt.
Ich verwende beide Techniken.
Gruß, Jürgen
Hallo Leute,
vielen, vielen Dank für Eure wirklich wervollen Anregungen und Vorschläge. Werde mich mal mit den einzelnen Techniken näher beschäftigen, um zu sehen, welche die richtige für mich ist.
Schönen Tag noch allerseits!
Martin