Hallo Günther,
Ich möchte gern ein Menü mit zwei Ebenen realisieren. Das Schema etwa wie:
- Kapitel
- Kapitel
2.1 Abschnitt
2.2 Abschnitt
2.3 Abschnitt ...- Kapitel
Vorgaben sind:
- Der Menüpunkt der aktuell angezeigten Seite ist nicht verlinkt.
- Die Ausgabe des Menüs soll als Liste <ul><li></li></ul> erfolgen.
- Jetzt kommt das Problem: der jeweilige obere Kapitel-Menüpunkt soll nicht verlinkt sein, wenn einer der zugehörigen unteren Abschnitt-Menüpunkte aktuell angezeigt wird.
Dazu muss man das Script, das ich in [http://jeenaparadies.net/weblog/2004/may/php-menue@title=Jeenas Weblog] gepostet habe
nur geringfügig verändern:
function menu($eintrage) {
$selber = str_replace('index.php','',$_SERVER['PHP_SELF']);
$output = "<ul>\n";
foreach ($eintrage as $eintrag) {
$output .= "\n<li>";
$length = strpos(substr($eintrag['href'], 1),'/');
if (isset($eintrag[0]) and
strpos($selber,$eintrag['href']) !== false and
substr($selber,0,$length) == substr($eintrag['href'],0,$length)
) {
$output .= '<em title="'.$eintrag['title'].'">'.$eintrag['text'].'</em>';
$output .= menu($eintrag[0]);
}
else {
if ($selber == $eintrag['href']) {
$output .= '<em title="'.$eintrag['title'].'">'.$eintrag['text'].'</em>';
}
else {
if (empty($eintrag['title'])) {
$output .= '<a href="'.$eintrag['href'].'">'.$eintrag['text'].'</a>';
}
else {
$output .= '<a href="'.$eintrag['href'].'" title="'.$eintrag['title'].'">'.$eintrag['text'].'</a>';
}
}
}
$output .= '</li>';
}
return $output.'</ul>';
}
Funktioniert dann auch problemlos mit x-beliebig tief verschachtelten Menüs.
Gruß
Alexander Brock
SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:? ss:| de:> js:( ch:| sh:( mo:} zu:}
http://againsttcpa.com