ich habe vor die Hintergrundbilder des vertikalen Menüs wechseln zu lassen, oder anders gesagt, die jeweiligen CSS-Klassen pro Hauptmenüpunkt zu wechseln.
Dabei soll das ganze dynamisch im Admin-Bereich einstellbar sein, daher möchte ich ein "Hardcoden" vermeiden.
EDIT sagt: Puh, manchmal sieht man den Wald vor lauter Bäumen nicht, habe viel zu umständlich gedacht und es mittlerweile gelöst. Daher entferne ich meine "Gehversuche" von vorhin.
Falls es mal jemand brauchen kann, hier meine Lösung.
Die "/include/includes/class/design.php" habe ich folgendermaßen umgeschrieben:
ab Zeile 267 ist die 1. Änderung zu finden.
Es wird ein Zähler gesetzt, der mit der ursprünglichen Schleife hochzählt. Das Ergebnis wird an die Variable $csklasse angehängt. Sollte diese größer 3 sein, wird sie resettet (weil ich nur 3 Wechsel der CSS-Klasse brauche).
Weiter unten wird die Variable dann ans Menü-Target angehängt.
} elseif ($row['was'] >= 2 AND $row['was'] <= 4) { // der name des menues wird gesetzt // und die variable wird gesetzt. $boxname = $row['name']; $menuzw = ''; $menuzwE = ''; $ex_ebene = 0; # ex ebene $hovmenu = ''; // menüpunkte hochzählen $zaehler++; // wenn zähler höher wird als verfügbare cssklassen, zähler resetten if ($zaehler >3) { $zaehler = 1; } // zähler der menüklasse zuweisen $csklasse = 'class="menu'.$zaehler; if ($row['was'] == 2 AND $tpl->list_exists('hmenupoint')) { $hovmenu = 'hmenu'; } elseif ($row['was'] == 3 AND $tpl->list_exists('vmenupoint')) { $hovmenu = 'vmenu'; } $firstmep = true; if (!empty($hovmenu)) { $menuzw .= $tpl->list_get($hovmenu . 'begi', array()); $menuzwE .= $tpl->list_get($hovmenu . 'ende', array()); } $hovmenup = $hovmenu . 'point'; } elseif ($whileMenP) { // menupunkt wird generiert $ebene = $row['ebene']; // css klasse an target anhängen ($csklasse) $menuTarget = ($subhauptx == 8 ? '_blank"'.$csklasse : '_self"'.$csklasse); list ($wmpA, $wmpE, $wmpTE, $wmpTEE) = explode ('|', $tpl->list_get ($hovmenup, array ($menuTarget, ($subhauptx == 8 ? '' : 'index.php?') . $row['path'], $row['name']))); if (!empty($menuzw) AND $firstmep === false) { $menuzw .= $this->get_boxes_get_menu_close ($ex_ebene, $ebene, $menuzw, $wmpE, $wmpTE, $wmpTEE); } $menuzw .= $wmpA; $firstmep = false; }
In der "/include/designs/templatename/style.css sind die entsprechenden CSS-Klassen zB. "menu1", "menu1:hover" usw. definiert.
Außerdem darf in der "/include/designs/templatename/index.htm" keine CSS-Klasse bei zB. "{_list_vmenupoint@}" gesetzt sein.
Viele Grüße
IronNighthawk
betroffene Homepage: derzeitlokal
Zuletzt modifiziert von IronNighthawk am 16.07.2013 - 05:44:13