Navigation ausgeklappt und mit wählbarem Startpunkt

Wie verwendet man Templates oder erstellt Navigationen und passt diese an.

Navigation ausgeklappt und mit wählbarem Startpunkt

Beitragvon Peter.Bickel » 23. Okt 2005, 14:50

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.
Benutzeravatar
Peter.Bickel
 
Beiträge: 1642
Registriert: 25. Jan 2005, 20:17
Wohnort: Schleswig-Holstein

Beitragvon Markus.Staab » 23. Okt 2005, 15:10

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
Zuletzt geändert von Markus.Staab am 23. Okt 2005, 16:37, insgesamt 1-mal geändert.
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Beitragvon Peter.Bickel » 23. Okt 2005, 16:01

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.
Benutzeravatar
Peter.Bickel
 
Beiträge: 1642
Registriert: 25. Jan 2005, 20:17
Wohnort: Schleswig-Holstein

Beitragvon Markus.Staab » 23. Okt 2005, 16:36

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
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Beitragvon Peter.Bickel » 23. Okt 2005, 16:46

:-)

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

Schönen Sonntag noch,
Peter.
Benutzeravatar
Peter.Bickel
 
Beiträge: 1642
Registriert: 25. Jan 2005, 20:17
Wohnort: Schleswig-Holstein

Beitragvon Markus.Staab » 23. Okt 2005, 16:49

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
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany


Zurück zu Templates/Navigationen [R3]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast