Und wie mach ich das?
Aktuell versuche ich es so. Mein Wunsch ist es eigendlich, nur die Artikel der aktuell angewählten Kategorie auszugeben und die anderen nicht an zu Zeigen. Doch irgendwie will das nicht so wie ich es will.
Code: Alles auswählen
<?php
// EXPLODE PATH
$PATH = explode("|",$this->getValue("path").$this->getValue("article_id")."|");
// GET CURRENTS
$path1 = (isset ($PATH[1])) ? $PATH[1] : '';
$path2 = (isset ($PATH[2])) ? $PATH[2] : '';
$path3 = (isset ($PATH[3])) ? $PATH[3] : '';
foreach (OOCategory::getRootCategories() as $lev1):
//ANFANG EBENE 1
if($lev1->isOnline()):
echo '<a class="LinkLevel1cat" href="'.$lev1->getUrl().'">'.$lev1->getName().'</a><br />';
// 1nd level - active link
if ($lev1->getId() == $path1) {
//Ausgabe der Artikel
$cat = OOCategory::getCategoryById($lev1->getId()); // hier die ID der Kategorie
$articles = $cat->getArticles(true); // Alle Artikel der Kategorie auslesen, die Online sind
if (is_array($articles)) {
for ($i = 0; $i < count($articles); $i++) {
echo '<a class="LinkLevel1art" href="'.$articles[$i]->getUrl().'">'.$articles[$i]->getName().'</a><br />';
}
}
// Ende Ausgabe der Artikel
}
// 1nd level - no active link
else {
echo '<a class="LinkLevel1cat" href="'.$lev1->getUrl().'">'.$lev1->getName().'</a><br />';
}
// Anfang Ebene 2
$lev1Size = sizeof($lev1->getChildren());
if($lev1Size != "0"):
foreach ($lev1->getChildren() as $lev2):
if ($lev2->isOnline()):
echo '<a class="LinkLevel2cat" href="'.$lev2->getUrl().'">'.$lev2->getName().'</a><br />';
// 2nd level - active link
if ($lev2->getId() == $path2) {
//Ausgabe der Artikel
$cat = OOCategory::getCategoryById($lev2->getId()); // hier die ID der Kategorie
$articles = $cat->getArticles(true); // Alle Artikel der Kategorie auslesen, die Online sind
if (is_array($articles)) {
for ($i = 0; $i < count($articles); $i++) {
echo '<a class="LinkLevel2art" href="'.$articles[$i]->getUrl().'">'.$articles[$i]->getName().'</a><br />';
}
}
// Ende ausgbae der Artikel
}
// 2nd level - no active link
else {
echo '<a class="LinkLevel2cat" href="'.$lev2->getUrl().'">'.$lev2->getName().'</a><br />';
}
endif;
// ANFANG EBENE 3
$lev2Size = sizeof($lev2->getChildren());
if($lev2Size != "0"):
foreach ($lev2->getChildren() as $lev3):
if ($lev3->isOnline()):
echo '<a class="LinkLevel3cat" href="'.$lev3->getUrl().'">'.$lev3->getName().'</a><br />';
// 2nd level - active link
if ($lev3->getId() == $path3) {
//Ausgabe der Artikel
$cat = OOCategory::getCategoryById($lev3->getId()); // hier die ID der Kategorie
$articles = $cat->getArticles(true); // Alle Artikel der Kategorie auslesen, die Online sind
if (is_array($articles)) {
for ($i = 0; $i < count($articles); $i++) {
echo '<a class="LinkLevel3art" href="'.$articles[$i]->getUrl().'">'.$articles[$i]->getName().'</a><br />';
}
}
// Ende Ausgabe der Artikel
}
// 2nd level - no active link
else {
echo '<a class="LinkLevel3cat" href="'.$lev3->getUrl().'">'.$lev3->getName().'</a><br />';
}
endif;
endforeach;
endif;
// ENDE EBENE 3
endforeach;
endif;
// ENDE EBENE 2
endif;
//ENDE EBENE 1
endforeach;
?>