[HTML]Einheitliches Menü für alle .html

rax

Well-known member
ID: 306248
L
17 Dezember 2007
46
0
Hi Leute, bin ein ziemlicher HTML noob, hätte da aber mal eine Frage:
Ich hab mehrere .html Dateien (Home, News, Kontakt, Impressum etc.) aber jede hat sein "eigenes Menü". D.h wenn icg was ändern will muss ich immer alle ändern.
Gibts da nicht ne möglichkeit ein Menü als .html, .css zu erstellen und dann in jede .html einfach zu includen? So muss ichs nur einmal ändern und das gilt dann für alle .htmls...

:)
 
HTML layoutet nur eine Webseite.

Entweder du änderst alle Dateien von Hand, ggf. auch mit einem Editor mit Search&Replace-Funktion oder du bemühst eine serverseitige Technik.
 
Naja, eigentlich wollte ich das Ganze mit iframe einbinden, wenn ich dann aber auf ein Menüpunkt klicke, wechselt er ja nur in der eingebundenen html Datei die Seite...
 
iFrame isn Scheiß - mal ganz unverblümt gesagt.

Du kannst ein Frameset benutzen, was man aber heutzutage einfach nicht mehr für diesen Zweck benutzt. Suchmaschinen mögen das ned und aus Sicht der Besucher wirkt sowas einfach nur primitiv und seit Jahren überholt.
 
Hab auch mal bei nem freund gesehen, dass das mit php zu realisieren wäre. Wie würde das aussehen?
 
Hab auch mal bei nem freund gesehen, dass das mit php zu realisieren wäre.
Du kannst es mit jeder serverseitigen Technik realisieren.
Wie würde das aussehen?
Willst du jetzt eine komplette Webpräsenz als Zip-File, oder wie? :roll:

Je nach Seitendesign (Front-Controller, etc.) sieht das anders aus. Irgendwo muss halt ein Menü definiert sein und genau dieses muss überhaupt angezeigt werden, egal, welche Unterseite angefordert wurde.
 
Wenn Dir PHP zur Verfügungen steht, kannst Du auf jeder Seite, wo das Menü eingeblendet werden soll, einfach folgendes schreiben, damit die Datei genau dort eingelesen wird:
PHP:
<?=file_get_contents('menu.html')?>
Die Datei muss dann natürlich auf .php enden oder der Webspace muss entsprechend konfiguriert werden, dass auch html-Dateien durch den PHP-Parser laufen.
 
bitte bitte nicht so machen sondan wenn schon dennschon dann <?php schreiben. Ist ein himmelweiter unterschied.
Jo, isses. Wenn du nur <?php schreibst, funktioniert es nicht, weil der Rückgabewert anstatt ausgegeben, einfach verworfen wird und du gar keine Ausgabe kriegst :ugly:
 
Wo ist denn da der himmelweite Unterschied?

Der einzige Unterschied ist, dass meine Variante zum einen nicht läuft, wenn short_open_tag auf false steht (was ich bislang sehr sehr selten erlebt habe) und zum anderen innerhalb eines Templates (worauf es im Endeffekt hinausläuft) wesentlich besser lesbar ist, als wenn ich immer einen kompletten Codeblock öffnen muss:
PHP:
<?=$foo?>
// ...im Vergleich zu...
<?php echo $foo; ?>
 
Wenn Dir PHP zur Verfügungen steht, kannst Du auf jeder Seite, wo das Menü eingeblendet werden soll, einfach folgendes schreiben, damit die Datei genau dort eingelesen wird:
PHP:
<?=file_get_contents('menu.html')?>
Die Datei muss dann natürlich auf .php enden oder der Webspace muss entsprechend konfiguriert werden, dass auch html-Dateien durch den PHP-Parser laufen.

thx, das funzt ;)