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

Navigation und bootstrap

Verfasst: 29. Sep 2014, 13:31
von Phlogiston
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.

Re: Navigation und bootstrap

Verfasst: 29. Sep 2014, 14:37
von RexDude
EIne einfach Google bzw. Forumssuche hilft hier weiter und liefert dieses Ergebnis: http://www.redaxo.org/de/forum/template ... 19735.html

Re: Navigation und bootstrap - gelöst

Verfasst: 29. Sep 2014, 22:55
von Phlogiston
Danke!
Problem ist behoben. :D

Re: Navigation und bootstrap

Verfasst: 13. Okt 2014, 18:08
von ralf.schlott
Noch eine? Kann man das nicht zusammentragen: http://www.redaxo.org/de/forum/template ... 19832.html

?

Gruß Ralf

Re: Navigation und bootstrap

Verfasst: 17. Okt 2014, 11:32
von nitzer

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>

Re: Navigation und bootstrap

Verfasst: 7. Nov 2014, 13:29
von cukabeka
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.

Re: Navigation und bootstrap

Verfasst: 9. Nov 2014, 19:31
von cukabeka
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>