[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Navigation ausgeklappt und mit wählbarem Startpunkt
Seite 1 von 1

Navigation ausgeklappt und mit wählbarem Startpunkt

Verfasst: 23. Okt 2005, 15:50
von Peter.Bickel
Hi Navi-Profis,

über Hilfe bei meinem folgenden Problem wäre ich dankbar:
Ich bräuchte eine mindestens dreistufige Navigation,
bei der
1. alle Unterebenen ausgeklappt, also immer sichtbar sind, und
2. der Startpunkt manuell wählbar ist. Ich meine damit, dass nicht wie üblicherweise die aktuelle Seite der Bezugspunkt für das Menü ist, sondern eine von mir vorgegebene Seiten-ID.

Hab trotz intensiver Suche im Forum oder im Downloadbereich keine Lösung dazu gefunden. Weiß einer Rat?

Besten Dank im voraus,
Peter.

Verfasst: 23. Okt 2005, 16:10
von Markus.Staab
Hi Peter,

Code: Alles auswählen

$startId = 5; // Hier beliebige Artikel-Id
$cat = OOCategory::getCategoryById($startId);

if( $cat !== null) {
  echo '<ul>';
  echo '<li>';
  echo $cat->toLink();

  $childs = $cat->getChildren(true);
  if ( is_array($childs)) {
    echo '<ul>';
    foreach( $childs as $lev1) {
      echo '<li>';
      echo $lev1->toLink();

      $lev1_childs = $lev1->getChildren(true);
      if ( is_array( $lev1_childs)) {
        echo '<ul>';
        foreach( $lev1_childs as $lev2) {
          echo '<li>';
          echo $lev2->toLink();
     
          $lev2_childs = $lev2->getChildren(true);
          if ( is_array( $lev2_childs)) {
            echo '<ul>';
            foreach( $lev2_childs as $lev3) {
              echo '<li>';
              echo $lev3->toLink();
              echo '</li>';
            } //endforeach
            echo '</ul>';
          } //endif

          echo '</li>';
        } //endforeach
        echo '</ul>';
      } //endif

      echo '</li>';
    } //endforeach
    echo '</ul>';
  } //endif
  echo '</li>';
  echo '</ul>';
} //endforeach
Versuch mal so.

ungetestet!

Gruß,
Markus

Verfasst: 23. Okt 2005, 17:01
von Peter.Bickel
Hi Markus,

that's it!
Kompliment.

Nur noch eins: In meinem Fall wäre es ideal, wenn ich Einfluss auf den Link haben könnte. Also dass nicht wie normalerweise auf die entsprechende Seite gelinkt wird, sondern die Seiten-ID als Parameter angehängt werden kann (also statt index.php?article_id=12 lieber beispielsweise index.php?article_id=1&seite=12)

Kann man also den Link statt $lev1->toLink() auch anders rauskriegen?

Vielen Dank,
Peter.

Verfasst: 23. Okt 2005, 17:36
von Markus.Staab
Hi Peter,

anstatt

Code: Alles auswählen

echo $lev1->toLink();
mach einfach

Code: Alles auswählen

echo '<a href="'. rex_getUrl( '', '', '&site='. $lev1->getId()) .'">'. $lev1->getName() .'</a>';
gleiches natürlich auch für $lev2 u. $lev3..

Gruß,
Markus

Verfasst: 23. Okt 2005, 17:46
von Peter.Bickel
:-)

Jawoll, danke!
Ich werd mich wieder in CDs revanchieren ...

Schönen Sonntag noch,
Peter.

Verfasst: 23. Okt 2005, 17:49
von Markus.Staab
pbickel hat geschrieben: Jawoll, danke!
Ich werd mich wieder in CDs revanchieren ...

Schönen Sonntag noch,
Peter.
Danke gleichfalls.

Freu mich schon auf das nächste Paket :-))

Gruß,
Markus