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/
Benutzeravatar
Phlogiston
Beiträge: 219
Registriert: 19. Mär 2008, 13:13
Kontaktdaten: Website

Navigation und bootstrap

29. Sep 2014, 13:31

Hallo Forum
habe für ein kleineres Projekt versucht bootstrap in Redaxo einzubauen.
Dazu habe ich das Navigationstemplate von der Redaxo- site verwendet. Also nicht die navigation facory.
Sondern die Navigation die man selbst anpassen kann. Leider werden damit aber auch Kategorien/Artikel ausgegeben die offline geschaltet sind.

Code: Alles auswählen

<?php

$PATH = explode("|",$this->getValue("path").$this->getValue("article_id")."|");

echo '<ul class="nav1">';
foreach (OOCategory::getRootCategories() as $lev1)
{
if($lev1->getId() == $PATH[1])
echo '<li class="active"><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';
else
echo '<li><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a>';

if(count($lev1->getChildren())>0)
{
echo '<ul class="nav2">';
foreach ($lev1->getChildren() as $lev2)
{
if($lev2->getId() == $PATH[1])
echo '<li class="active"><a href="'.$lev2->getUrl().'">'.$lev2->getName().'</a>';
else
echo '<li><a href="'.$lev2->getUrl().'">'.$lev2->getName().'</a>';
}
echo '</ul>';
}
echo '</li>';
}
echo '</ul>';

?>
Es müsste doch möglich sein, das relativ einfach abzustellen. Also offline geschaltetet Inhalte nicht über die Navigationsleistet auszugeben.
Kann mir da jemand einen Tip geben.

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: Navigation und bootstrap

29. Sep 2014, 14:37

EIne einfach Google bzw. Forumssuche hilft hier weiter und liefert dieses Ergebnis: http://www.redaxo.org/de/forum/template ... 19735.html

Benutzeravatar
Phlogiston
Beiträge: 219
Registriert: 19. Mär 2008, 13:13
Kontaktdaten: Website

Re: Navigation und bootstrap - gelöst

29. Sep 2014, 22:55

Danke!
Problem ist behoben. :D

Benutzeravatar
ralf.schlott
Beiträge: 625
Registriert: 5. Dez 2007, 21:22
Wohnort: Hamburch
Kontaktdaten: Website

Re: Navigation und bootstrap

13. Okt 2014, 18:08

Noch eine? Kann man das nicht zusammentragen: http://www.redaxo.org/de/forum/template ... 19832.html

?

Gruß Ralf
- Danke für Redaxo! -
http://www.prenzlweb.de

Benutzeravatar
nitzer
Beiträge: 229
Registriert: 16. Okt 2006, 22:53
Wohnort: Erkrath
Kontaktdaten: ICQ Website AOL

Re: Navigation und bootstrap

17. Okt 2014, 11:32

Code: Alles auswählen

<nav class="collapse navbar-collapse clearfix" role="navigation">
<?php
$PATH = explode("|",$this->getValue("path").$this->getValue("article_id")."|");
echo '<ul class="nav navbar-nav navbar-right">';
foreach (OOCategory::getRootCategories($this->ignoreOfflines) as $lev1)
   {
   
 if ($lev1->isOnline(true)) {
   
      if($lev1->getId() == $PATH[1])
      {
         if(count($lev1->getChildren())>0)
         {
            echo '<li class="dropdown active"><a class="dropdown-toggle" data-toggle="dropdown"  href="'.$lev1->getUrl().'" title="'.$lev1->getName().'">'.$lev1->getName().'</a>';
         }else{
            echo '<li class="active"><a href="'.$lev1->getUrl().'" title="'.$lev1->getName().'">'.$lev1->getName().'</a>';
         }
   }else{
      if(count($lev1->getChildren())>0)
      {
         echo '<li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="'.$lev1->getUrl().'" title="'.$lev1->getName().'">'.$lev1->getName().'</a>';
      }else{
         echo '<li><a href="'.$lev1->getUrl().'" title="'.$lev1->getName().'">'.$lev1->getName().'</a>';
      }
   }
  
 }
   
   if(count($lev1->getChildren())>0)
   {
      echo '<ul class="dropdown-menu">';
      foreach ($lev1->getChildren() as $lev2)
      {
         
       if ($lev2->isOnline(true)) {
         
         if($lev2->getId() == $PATH[1])
         
         
         {
            $dropdownSub = "";
            if(count($lev2->getChildren())>0) $dropdownSub = "dropdown-submenu";
            echo '<li class="active '.$dropdownSub.'"><a tabindex="-1" href="'.$lev2->getUrl().'" title="'.$lev2->getName().'">';
            echo $lev2->getName();
            echo '</a>';
            if(count($lev2->getChildren())>0)
            {
               echo '<ul class="dropdown-menu">';
               foreach ($lev2->getChildren() as $lev3)
               {
                  if($lev3->getId() == $PATH[2])
                  echo '<li class="active"><a href="'.$lev3->getUrl().'" title="'.$lev3->getName().'">'.$lev3->getName().'</a>';
                  else
                  echo '<li><a href="'.$lev3->getUrl().'" title="'.$lev3->getName().'">'.$lev3->getName().'</a>';
               }
               echo '</ul>';
            }
         }else{
            $dropdownSub = "";
            if(count($lev2->getChildren())>0) $dropdownSub = "dropdown-submenu";
            echo '<li class="'.$dropdownSub.'"><a tabindex="-1" href="'.$lev2->getUrl().'" title="'.$lev2->getName().'">';
            echo $lev2->getName();
            echo '</a>';
            if(count($lev2->getChildren())>0)
            {
               echo '<ul class="dropdown-menu">';
               foreach ($lev2->getChildren() as $lev3)
               {
                  if($lev3->getId() == $PATH[2])
                  echo '<li class="active"><a href="'.$lev3->getUrl().'" title="'.$lev3->getName().'">'.$lev3->getName().'</a>';
                  else
                  echo '<li><a href="'.$lev3->getUrl().'" title="'.$lev3->getName().'">'.$lev3->getName().'</a>';
               }
                  echo '</ul>';
            }
         }
         
         }
      }
      echo '</ul>';
   }
   echo '</li>';
   }
   
echo '</ul>';
?>
</nav>

Benutzeravatar
cukabeka
Beiträge: 821
Registriert: 31. Mai 2006, 00:01
Wohnort: Aschaffenburg

Re: Navigation und bootstrap

7. Nov 2014, 13:29

Hi Nitzer!

Danke Dir, funktioniert super! Magst Du die evtl im Download-Bereich einstellen, dann können andere User sich eine Bootstrap-Navi direkt mit Hirbods Installer herunterladen.
Viele Grüße
cukabeka

Benutzeravatar
cukabeka
Beiträge: 821
Registriert: 31. Mai 2006, 00:01
Wohnort: Aschaffenburg

Re: Navigation und bootstrap

9. Nov 2014, 19:31

hi, habe noch einen kleinen Fehler entdeckt, die /LI -Tags wurden auch bei offline-Artikeln dazwichen ausgegeben. Hier mein Update:

Code: Alles auswählen

<div class="container">
	<div class="row">

		<nav class="collapse navbar-collapse navbar-static-top clearfix" role="navigation">
			<?php
			$PATH = explode("|", $this -> getValue("path") . $this -> getValue("article_id") . "|");
			echo '<ul class="nav navbar-nav">';
			foreach (OOCategory::getRootCategories($this->ignoreOfflines) as $lev1) {

				if ($lev1 -> isOnline(true)) {

					if ($lev1 -> getId() == $PATH[1]) {
						if (count($lev1 -> getChildren()) > 0) {
							echo '<li class="dropdown active"><a class="dropdown-toggle" data-toggle="dropdown"  href="' . $lev1 -> getUrl() . '" title="' . $lev1 -> getName() . '">' . $lev1 -> getName() . '</a>';
						} else {
							echo '<li class="active"><a href="' . $lev1 -> getUrl() . '" title="' . $lev1 -> getName() . '">' . $lev1 -> getName() . '</a>';
						}
					} else {
						if (count($lev1 -> getChildren()) > 0) {
							echo '<li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="' . $lev1 -> getUrl() . '" title="' . $lev1 -> getName() . '">' . $lev1 -> getName() . '</a>';
						} else {
							echo '<li><a href="' . $lev1 -> getUrl() . '" title="' . $lev1 -> getName() . '">' . $lev1 -> getName() . '</a>';
						}
					}

				}

				if (count($lev1 -> getChildren()) > 0) {
					echo '<ul class="dropdown-menu">';
					foreach ($lev1->getChildren() as $lev2) {

						if ($lev2 -> isOnline(true)) {

							if ($lev2 -> getId() == $PATH[1]) {
								$dropdownSub = "";
								if (count($lev2 -> getChildren()) > 0)
									$dropdownSub = "dropdown-submenu";
								echo '<li class="active ' . $dropdownSub . '"><a tabindex="-1" href="' . $lev2 -> getUrl() . '" title="' . $lev2 -> getName() . '">';
								echo $lev2 -> getName();
								echo '</a>';
								if (count($lev2 -> getChildren()) > 0) {
									echo '<ul class="dropdown-menu">';
									foreach ($lev2->getChildren() as $lev3) {
										if ($lev3 -> getId() == $PATH[2])
											echo '<li class="active"><a href="' . $lev3 -> getUrl() . '" title="' . $lev3 -> getName() . '">' . $lev3 -> getName() . '</a>';
										else
											echo '<li><a href="' . $lev3 -> getUrl() . '" title="' . $lev3 -> getName() . '">' . $lev3 -> getName() . '</a>';
									}
									echo '</ul>';
								}
							} else {
								$dropdownSub = "";
								if (count($lev2 -> getChildren()) > 0)
									$dropdownSub = "dropdown-submenu";
								echo '<li class="' . $dropdownSub . '"><a tabindex="-1" href="' . $lev2 -> getUrl() . '" title="' . $lev2 -> getName() . '">';
								echo $lev2 -> getName();
								echo '</a>';
								if (count($lev2 -> getChildren()) > 0) {
									echo '<ul class="dropdown-menu">';
									foreach ($lev2->getChildren() as $lev3) {
										if ($lev3 -> getId() == $PATH[2])
											echo '<li class="active"><a href="' . $lev3 -> getUrl() . '" title="' . $lev3 -> getName() . '">' . $lev3 -> getName() . '</a>';
										else
											echo '<li><a href="' . $lev3 -> getUrl() . '" title="' . $lev3 -> getName() . '">' . $lev3 -> getName() . '</a>';
									}
									echo '</ul>';
								}
							}

						}
						if ($lev2 -> isOnline(true)) {echo '</li>';}
					}
					echo '</ul>';
				}
				if ($lev1 -> isOnline(true)) {echo '</li>';}
			}

			echo '</ul>';
		?>
		
		</nav>

	</div>
</div>
Viele Grüße
cukabeka

Zurück zu „Allgemeines [R4]“