ich habe leider ein kleines problem bei der erstellung einer navigation.
ich brauche eine navigation die alle kategorien und artikel die online sind ausgibt. also im prinzip eine sitemap aber die ausgabe muß exakt so sein:
ausgabe der ul li liste:
- Code: Alles auswählen
<ul id="MenuBar1" class="MenuBarHorizontal">
<li><a class="MenuBarItemSubmenu" href="#">Element 1</a>
<ul>
<li><a href="#">Element 1.1</a></li>
<li><a href="#">Element 1.2</a></li>
<li><a href="#">Element 1.3</a></li>
</ul>
</li>
<li><a href="#">Element 2</a></li>
<li><a class="MenuBarItemSubmenu" href="#">Element 3</a>
<ul>
<li><a class="MenuBarItemSubmenu" href="#">Element 3.1</a>
<ul>
<li><a href="#">Element 3.1.1</a></li>
<li><a href="#">Element 3.1.2</a></li>
</ul>
</li>
<li><a href="#">Element 3.2</a></li>
<li><a href="#">Element 3.3</a></li>
</ul>
</li>
<li><a href="#">Element 4</a></li>
</ul>
ich habe es mit den sitemap templates versucht, bekomme aber nie die richtige id oder classe an die richtige stelle. bin leider kein programmierer würde mich aber über die hilfe von einem freuen.
danke gruß richy
ps: bastele gerade mit dem spry framework und würde gerne der gemeinde ein paar nette sachen zur verfügung stellen. die natürlich auch funktionieren sollen
AKTUELLE NAVI VERSION:
<?php
function sitemapliste2(&$openul,$lev,$PathIndex,$lastcat) {
$time = time();
{
if($openul == 0) {
print '<ul id="MenuBar1" class="MenuBarHorizontal">';
$openul = 1;
}
if($lastcat == $lev){
$last = '';
$last2 = '';
} else {
$last = '';
$last2 = '';
}
if(sizeof($lev->getChildren()) != 0 OR count($lev->getArticles()) > 1){
$open = 'Open';
} else {
$open = '';
}
print '<li><a href="'.$lev->getUrl().'">'.$lev->getName().'</a>';
////////////ARTIKEL START///////////////////
$article = $lev->getArticles();
$i=0;
$j=0;
if (count($article) > 1) {
echo '<ul>';
foreach ($article as $var) {
if ($var->isOnline(true) and $articleId != $lev->getId()){
$i = $i+1;
}
}
foreach ($article as $var) {
$articleId = $var->getId();
$articleName = $var->getName();
if ($var->isOnline(true) and $articleId != $lev->getId()){
$j = $j + 1;
if($j == $i){
$last = '';
$last2 = '';
} else {
$last = '';
$last2 = '';
}
print '<li class="MenuBarItemSubmenu"><a class="MenuBarItemSubmenu" href="'.rex_getUrl($articleId).'">'.$articleName.'</a></li>';
}
}
echo '</ul>';
}
////////////ARTIKEL ENDE/////////////////////
$levSize = sizeof($lev->getChildren());
if($_SESSION['USR_TYP'] < $lev->getValue("art_type_id")){
$levSize = 0;
}
if($levSize != 0)
{
$opensubul = 0;
$k = 0;
foreach($lev->getChildren() as $sublevel) {
$k = $k + 1;
if($k == $levSize){
$lastcat = $sublevel;
}
sitemapliste2($opensubul,$sublevel,$PathIndex + 1,$lastcat);
}
if($opensubul == 1)
echo "</ul>";
}
echo "</li>\n";
}
}
$openul = 0;
foreach (OOCategory::getRootCategories() as $lev1){
sitemapliste2($openul,$lev1,1,0);
}
if($openul == 1) {
echo "</ul>\n";
}
?>
LEIDER WERDEN NOCH ALLE OFFLINE KATEGORIEN UND ARTIKEL ANGEZEIGT und das:
- Code: Alles auswählen
<ul id="MenuBar1" class="MenuBarHorizontal">
bei jeder ul??
also so:
- Code: Alles auswählen
<div id="nav-header">
<ul id="MenuBar1" class="MenuBarHorizontal"><li><a href="home">Home</a><ul id="MenuBar1" class="MenuBarHorizontal"><li><a href="home/home-1">Home 1</a></li>
</ul></li>
<li><a href="team">Team</a><ul id="MenuBar1" class="MenuBarHorizontal"><li><a href="team/team-1">Team 1</a></li>
<li><a href="team/team-2">Team 2</a></li>
</ul></li>
<li><a href="system">System</a><ul id="MenuBar1" class="MenuBarHorizontal"><li><a href="system/system-1">System 1</a></li>
</ul></li>
<li><a href="erste-schritte">Erste Schritte</a></li>
<li><a href="kontakt">Kontakt</a></li>
<li><a href="newsletter">Newsletter</a><ul id="MenuBar1" class="MenuBarHorizontal"><li><a href="newsletter/23-01-2009">23-01-2009</a></li>
</ul></li>
</ul>
</div>
BITTE UM HILFE...

