hi,
Ich habe z. B. keine Ahnung, was "entlinken" sein soll.
Es geht um ein Ausklappmenu, entlinken in diesem zusammenhang bedeutet, dass der Link der aktuell angezeigten Seite kein Link mehr sein soll.
Habe es gerade selbst hinbekommen, aber Suboptimal.
Auf Deiner Testseite erscheint als erster Unterpunkt eines Links immer ein Eintrag mit gleichem Namen und ohne Link. Das soll so sein?
Ja, das ist so beabsichtigt, dass stellt "Quasi" den Index der gewählten Rubrik dar, aber anders kriege ich es auch nicht zum ausklappen.
Soll das Navigationsmenü beliebig tief verschachtelt werden können?
Das wäre natürlich der Idealfall, ich habe es jetzt so hinbekommen, das ich auf Maximal eine unterebene komme, besser wäre eine beliebig tiefe verschachtelung.
Der jetzige stand der dinge ist http://start-navi.de/.
50 Zeilen verantwortlicher Code:
(Neues Ziel ist eine unendlich tiefe verschachtelung, lohnt es, auf diesen Code aufzubauen oder besser neu anfangen?)
<?php error_reporting('E_ALL');
$menu_child_navi_links = array(
"Home" => array("/" => array(
)),
"Equipment" => array("/equipment" => array(
"/equipment" => "Equipment", "/equipment/einstellungen" => "Justage", "/equipment/insider-tipps" => "Tipps und Tricks","/equipment/tisch-ausrichten" => "Tisch ausrichten"
)),
"Scratchen" => array("/scratchen" => array(
"/scratchen" => "Scratchen", "/scratchen/fortgeschritten/woerter-scratch" => "Wordscratch"
)),
"beatjuggle" => array("/beatjuggling" => array(
)),
"Mixen" => array("/mixen" => array(
"/mixen" => "Mixen", "/mixen/takt-korrigieren" => "Takt korrigieren"
))
); reset ($menu_child_navi_links);
function entlink($mein_link_array) {
global $MeineListeBauen;
foreach($mein_link_array as $level_key_1 => $level_value_1) {
foreach($level_value_1 as $level_key_2 => $level_value_2) {
if($_SERVER['REQUEST_URI'] == $level_key_2) {
$haupt_menu = "<li><em>$level_key_1</em></li>";
} else {
$haupt_menu = "<li><a href='$level_key_2'>$level_key_1</a></li>";
}
if(array_key_exists($_SERVER['REQUEST_URI'], $level_value_2)) {
$MeineListeBauen .= "<li>$level_key_1<ul>";
foreach($level_value_1[$level_key_2] as $neue_links => $link_name ) {
if($_SERVER['REQUEST_URI'] == $neue_links) {
$MeineListeBauen .= "<li><em>$link_name</em></li>";
}
else { $MeineListeBauen .= "<li><a href='$neue_links'>$link_name</a></li>"; }
}
$MeineListeBauen .= "</ul></li>";
}
else { $MeineListeBauen .= $haupt_menu; }
}
}
return $MeineListeBauen;
}
entlink($menu_child_navi_links);
echo "<ul>$MeineListeBauen</ul>";
?>
mfg