hi!
ich weiß...das wurde wohl schon oft gefragt, aber ich komm echt nicht weiter!
ich suche eine navigation, bei der die erste ebene horizontal und die zweite und weitere unterebenen vertikal dargestellt werden. möglichst sollte der aktive punkt auch noch markiert werden.
wär klasse, wenn mir jemand helfen könnte!
danke!
ciao bleed
navigation
Hallo!
Ich habe folgendes gemacht, einen neuen Strukturbaum angelegt und habe so 3 Navigationen erzeugt.
Ich habe 2 Hauptnavigationen (verti) und eine Subnavigation (hochz).
Version 4.2 !
Hier meine Hauptnavigationen !
ich habe den Code extern und include Ihn im Layout (geht auch mit Modul)
ich rufe die Navigation wie folgt auf
So habe ich zwei Navigationen getrennt
die hochinzantale wie folgt.
wundere dich nicht wegen der IMG´s sind Grafische Untermalungen:-)
Also ich hoffen geholfen zu haben !
Jörg
Ich habe folgendes gemacht, einen neuen Strukturbaum angelegt und habe so 3 Navigationen erzeugt.
Ich habe 2 Hauptnavigationen (verti) und eine Subnavigation (hochz).
Version 4.2 !
Hier meine Hauptnavigationen !
ich habe den Code extern und include Ihn im Layout (geht auch mit Modul)
Code: Alles auswählen
<?php
//-----------<!-- BEGIN MAIN_NAVIGATION -->---------------------------//
//$nav_start = '3';
$nav_col_out = "#FFFFFF";
$nav_col_over = "#FFFFFF";
$nav_col_back = "#FFFFFF";
$nav_col_on = "#FFFFFF";
$nav_col_off = "#FFFFFF";
$img_off = $cfgPathFrontendImg."moarrow_off.gif";
$img_on = $cfgPathFrontendImg."moarrow_on.gif";
$space = $cfgPathFrontendImg."space.gif";
// offenen Pfad finden //
$nav_path = array();
$nav_tree = array();
$tmp_idcat = $idcat;
while($tmp_idcat > 0){
array_push($nav_path, $tmp_idcat);
$tmp_idcat = $con_tree[$tmp_idcat][parent];
};
$nav_path = array_reverse($nav_path);
//var_dump($nav_path);
if($nav_path[0] != $nav_start){$nav_path = array($nav_start);};
// Baum sortieren //
for($i = 0;$i < sizeof($nav_path);$i++){
$tmp_found=0;
for($nr = 0; $nr <= $con_tree_max; $nr++){
if($con_tree[$nr][parent] == $nav_path[$i] && $con_tree[$nr][preid] == '0'){$tmp_found=1;break;}
}
unset($tmp_level);$tmp_level = array();
do{
array_push($tmp_level , $nr);
$nr = $con_tree[$nr][postid];
} while($nr != '0' && $tmp_found==1);
if($i == 0){$nav_tree = $tmp_level;}
else {
$x = array_search("$nav_path[$i]", $nav_tree);
array_splice($nav_tree, $x+1, 0, $tmp_level);
};
};
// Baum ausgeben //
echo "<table width=100% cellspacing=\"3\" cellpadding=\"2\" border=\"0\">\n";
foreach($nav_tree as $nr){
if(($con_tree[$nr][public] == '1' or $auth->auth["uid"] != "nobody") and $con_tree[$nr][visible] == '1'){
echo "<tr><td onMouseOver=\"this.style['background']='".$nav_col_over."';\" ";
echo "onMouseOut=\"this.style['background']='".$nav_col_out."';\" bgcolor=\"$nav_col_out\" nowrap>";
unset($mod_space);
$mod_space = array();
$mod_space = array_pad($mod_space,($con_tree[$nr][level] - 1),"<img src=\"".$space." WIDTH=\"20\" HEIGHT=\"2\" BORDER=\"0\" align=\"left\">");
echo "<span style='background-color:".$nav_col_back.";'>".implode("",$mod_space)."</span>";
if($nr == $idcat){ echo "<span style='background-color:".$nav_col_on."'><img src=\"".$img_on."\"></span>"; }
else { echo "<span style='background-color:".$nav_col_off."'><img src=\"".$img_off."\"></span>"; };
echo "<a href=\"".$con_tree[$nr][link]."\" id=\"left-menu\">".$con_tree[$nr][titel]."</a></td></tr>";
};
};
unset($nav_tree);unset($nav_path);
echo "</table>";
//-------------------<!-- END MAIN_NAVIGATION -->---------------------//
?>
Code: Alles auswählen
// Startebene (parent) schau bei DIR
$nav_start='3'
include ("inc/main_nav.inc.php");
//
$nav_start='19'
include ("inc/main_nav.inc.php");
//
die hochinzantale wie folgt.
Code: Alles auswählen
<!-- BEGIN SECOND_NAVIGATION -->
<?php
//-----------------------------------------------------------------------------//
$nav_start = '4';
//$nav_col_out = "#6699FF";
//$nav_col_over = "#9999FF";
//$nav_col_back = "#6600FF";
//$nav_col_on = "#FF0000";
//$nav_col_off = "#F6F6F&";
//$font_normal = "top-menu";
//$font_aktiv = "top-menu";
$img_on = $cfgPathFrontendImg."moarrow_on_top.gif";
// Baum sortieren //
for($nr = 0; $nr <= $con_tree_max; $nr++){
if($con_tree[$nr][parent] == $nav_start && $con_tree[$nr][preid] == '0'){$tmp_found=1;break;}
}
unset($nav_tree);$nav_tree = array(); $i = -1;
do{
array_push($nav_tree , $nr);
$nr = $con_tree[$nr][postid];
$i++;
} while($nr != '0' && $tmp_found==1 && $i <= $con_tree_max);
// Baum ausgeben //
foreach($nav_tree as $nr){
if(($con_tree[$nr][public] == '1' or $auth->auth["uid"] != "nobody") and $con_tree[$nr][visible] == '1')
{
echo "<a href=\"".$con_tree[$nr][link]."\" id=\"top-menu\">";
if($nr == $idcat){ echo "<img src=\"".$img_on."\" border=\"0\" align=\"middle\" width=\"4\" height=\"10\">"; }
echo $con_tree[$nr][titel]."</a> ";
if($con_tree[$nr][postid] != 0){ echo "| "; };
};
};
unset($nav_tree);
?>
<!-- END SECOND_NAVIGATION -->
Also ich hoffen geholfen zu haben !
Jörg
habs grad ausprobiert! klappt! vielen dank!
eine frage hätt ich trotzdem noch :
und zwar hätt ich es gerne, dass die erste ebene in der vertikalen navigaiton nicht angezeigt wird. also, dass vertikal immer nur die jeweiligen unterpunkte auftauchen.
klappt das auch noch irgendwie ?!
vielen dank! bleed
eine frage hätt ich trotzdem noch :
und zwar hätt ich es gerne, dass die erste ebene in der vertikalen navigaiton nicht angezeigt wird. also, dass vertikal immer nur die jeweiligen unterpunkte auftauchen.
klappt das auch noch irgendwie ?!
vielen dank! bleed