Bild im Header abhängig vom Menü
am 23.04.2008 - 23:53 Uhr in
Guten Tag,
wie kann ich ein Bild im Header wechseln, abhängig davon welches Menü gewählt wurde? Z. B. ein Bild mit Kindern zeigen, wenn das Menü Kinder gewählt wurde und Senioren, wenn das Menü Senioren gewählt wurde.
Herzlichen Gruß
Frank
- Anmelden oder Registrieren um Kommentare zu schreiben

evtl. gibt es ein Modul
am 24.04.2008 - 06:11 Uhr
evtl. gibt es ein Modul dafür, welches mir jedoch nicht bekannt ist. Daher würde ich folgendes vorschlagen:
<?phpif(hier abfragen, welches menu gewählt wurde){
$menu = "id_hallo_welt";
}else{
$menu = "huhu";
}
?>
Dort wo dann das Bild gesetzt wird, gibst du ein:
<div id="#<?php print $menu; ?>">Und jetzt kannst du über CSS jeder ID ein anderes Bild zuordnen. Falls das Bild direkt über
Falls das Bild direkt über ...?
am 24.04.2008 - 17:15 Uhr
Hallo rapsli,
danke für die Antwort, sie kam nur zum Teil an.
Ich glaube aber, ich habe mich nicht verständlich gemacht. Ich meinte, ein Headerimage im Headerbereicht von Drupal abhängig von der Wahl im Navigationsmenü anzuzeigen.
Hättest du dafür einen Vorschlag?
Herzlichen Gruß
Frank
Auch Interesse an dieser Lösung
am 01.05.2008 - 18:57 Uhr
Bei der hier dargestellten Lösung wird nach Einblendung der gewünschten Headergrafik diese wieder weggeschaltet, wenn ein Untermenüpunkt gewählt wird.
z.B. Menü "Auto" "Eisenbahn" "Motorrad" sind die Menüpunkte der 1. Ebene. Für jeden dieser Punkte soll im header eine eigene Grafik sein.
"Auto" hat die Untermenüpunkte "Mercedes" und "Audi". Wähle ich jetzt einen von diesen aus, wechselt die Grafik auch, was nicht sein soll.
Bei "Abfragen welches Menü gewählt wurde" brauche ich eine Lösung die sich nur auf die 1. Ebene bezieht. Wie kann ich die Menüpunkte der 1. Ebene auslesen?
Ich habe es so gelöst
am 08.05.2008 - 16:07 Uhr
Nur die Menüebene auswerten habe ich nicht hinbekommen. Also habe ich es mit der Auswertung von $breadcrumb versucht.
Bei mir funktioniert es so.
in der page.tpl.php in der Region der Grafik eine variable ID erzeugen. Dazu verwende ich eine selbstgeschriebene Funktion get_header_id() welche in der template.php steht. Diese Funktion ermittelt, welcher Name der Hauptmenüebene in $breadcrumb vorkommt. Hier im Beispiel Menüpunkt1 bis Menüpunkt4
<div id=<?php print get_header_id($breadcrumb) ?>>in der template.php (anlegen, wenn noch nicht vorhanden)
function get_header_id($breadcrumb){
if ( substr_count($breadcrumb,'Menüpunkt1')>0){
$hd='header1';
}
elseif ( substr_count($breadcrumb,'Menüpunkt2')>0)
{
$hd='header2';
}
elseif( substr_count($breadcrumb,'Menüpunkt3')>0)
{
$hd='header3';
}
elseif ( substr_count($breadcrumb,'Menüpunkt4')>0)
{
$hd='header4';
}
else
{
$hd='header';
}
return $hd;
}
In der style.css dann die verschiedenen Grafiken einbinden
#header1 {
background: url(images/grafik1)no-repeat;
}
#header2 {
background: url(images/grafik2)no-repeat;
}
#header3 {
background: url(images/grafik3)no-repeat;
}
#header4 {
background: url(images/grafik4) no-repeat;
}
#header {
background: url(images/grafik)no-repeat;
}
Danke shortyweg, eine
am 13.05.2008 - 21:14 Uhr
Danke shortyweg,
eine Lösung basierend auf Breadcrumb schwebte mir auch vor, nur war ich noch nicht soweit vorgedrungen wie du.
Herzlichen Dank für deine Lösung!
Gruß
Frank