Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: http://redaxo.org/slack/
flow013
Beiträge: 29
Registriert: 1. Apr 2013, 14:45

Navigation als Select Box

28. Nov 2013, 13:32

Hallo,

ich versuche gerade eine Navigation der 2. Ebene als Select Box auszugeben.
Hat jemand eine Idee?

Danke für die Hilfe!

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

Re: Navigation als Select Box

28. Nov 2013, 15:39

Hallo,

das ist mehr oder weniger einfache php abfrage.

hier mal was ich glaube mal benutzt habe, frage mich aber nicht wo her oder selber gebastelt.
Ist aber drei ebenen einfach den teil mit level 3 löschen

Code: Alles auswählen

<select name="top5" size="5">
<?php
$PATH = explode("|",$this->getValue("path").$this->getValue("article_id")."|");
foreach (OOCategory::getRootCategories(true) as $lev1){
    if($lev1->isOnline(true)) {
        if($lev1->getId() == $PATH[1])
        echo '<option value="'.$lev1->getUrl().'" selected >- '.$lev1->getName().'</option>';
        else
        echo '<option value="'.$lev1->getUrl().'">- '.$lev1->getName().'</option >';
        
        $lev1Size = sizeof($lev1->getChildren(true));
        if ($lev1Size != "0") {
            foreach ($lev1->getChildren() as $lev2){
                if ($lev2->isOnline(true)) {
                
                    if($lev2->getId() == $PATH[2])
                    echo '<option value="'.$lev2->getUrl().'" selected >-- '.$lev2->getName().'</option>';
                    else
                    echo '<option value="'.$lev2->getUrl().'">-- '.$lev2->getName().'</option >';
                                            
                    $lev2Size = sizeof($lev2->getChildren(true));
                    if ($lev2Size != "0") {
                        foreach ($lev2->getChildren() as $lev3){
                            if ($lev3->isOnline(true)) {
                            
                                if($lev3->getId() == $PATH[3])
                                echo '<option value="'.$lev3->getUrl().'" selected >--- '.$lev3->getName().'</option>';
                                else
                                echo '<option value="'.$lev3->getUrl().'">--- '.$lev3->getName().'</option >';        
                                
                            }#lev3 isOnline 
                        }#lev3 foreach
                    }#lev2Size hat kinder                    
                }#lev2 isOnline 
            }#lev2 foreach
        }#lev1Size hat kinder 
    }#lev1 isOnline 
}#root foreach
?>

</select>
Cheffchen

flow013
Beiträge: 29
Registriert: 1. Apr 2013, 14:45

Re: Navigation als Select Box

28. Nov 2013, 15:54

Hi Cheffchen,

danke für die schnelle Antwort!
Das ganze scheint in die richtige Richtung zu gehen, allerdings wird die Selectbox seltsam dargestellt und die Weiterleitung in den jeweiligen Seitenbereich fehlt noch.
Eine Idee woran es liegen kann?
Dateianhänge
Screen Shot 2013-11-28 at 14.51.03.png
Screen Shot 2013-11-28 at 14.51.03.png (11.59 KiB) 4641 mal betrachtet

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

Re: Navigation als Select Box

28. Nov 2013, 19:17

Hallo,

das dürfte aber html grundkurs sein oder meinst was anderes?
zeile 1

Code: Alles auswählen

<select name="top5" size="5">
ändern in 
<select name="top5" size="1"> 
der rest ist jquery wenn was geklickt soll weitergeleitet werden.

Cheffchen

flow013
Beiträge: 29
Registriert: 1. Apr 2013, 14:45

Re: Navigation als Select Box

28. Nov 2013, 19:36

Perfekt, jetzt passt es - danke!
Und das mit dem HTML-Grundkurs habe ich überlesen ;)

flow013
Beiträge: 29
Registriert: 1. Apr 2013, 14:45

Re: Navigation als Select Box

28. Nov 2013, 20:16

Sorry, eine Frage noch:
ich möchte lediglich die Unterpunkte der zweiten Ebene aus der ausgewählten Kategorie anzeigen lassen.
So sieht es momentan aus:
<select name="top5" size="1">
<?php
$PATH = explode("|",$this->getValue("path").$this->getValue("article_id")."|");
foreach (OOCategory::getRootCategories(true) as $lev1){
if($lev1->isOnline(true)) {

$lev1Size = sizeof($lev1->getChildren(true));
if ($lev1Size != "0") {
foreach ($lev1->getChildren() as $lev2){
if ($lev2->isOnline(true)) {

if($lev2->getId() == $PATH[2])
echo '<option value="'.$lev2->getUrl().'" selected >'.$lev2->getName().'</option>';
else
echo '<option value="'.$lev2->getUrl().'">'.$lev2->getName().'</option >';


}#lev2 isOnline
}#lev2 foreach
}#lev1Size hat kinder
}#lev1 isOnline
}#root foreach
?>

</select>

Zurück zu „Allgemeines [R4]“