[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • neue Navigationsmöglichkeiten in R5?
Seite 1 von 1

neue Navigationsmöglichkeiten in R5?

Verfasst: 16. Mär 2016, 20:32
von Daimonion
Hallo

Wie sieht es denn mit den Möglichkeiten aus in R5 Navigationen und Menüs zu erstellen?

Ich bin noch recht neu in redaxo und habe bisher nur eine Seite mit R4 erstellt.

Nun, bei der zweiten Seite wollte ich gleich auf R5 setzen und sehe, dass ich damit goldrichtig lag. Mit dem neuen Backend zu arbeiten, macht riesig Spaß. Nur sind die Tutorials und Dokus noch nicht ganz soweit dass man auch die API gut versteht. Für einen Neuling wie mich ist es dann doppelt schwierig.

Daher meine Frage welche Möglichkeiten habe ich denn unter R5 (5.0.1) die Kategorien und deren URLs auszulesen?

ich hab hier im Forum schon was von rex_category gelesen und auch was von der Navigation Factory.

Könnt ihr mir da vielleicht etwas Licht ins Dunkel bringen?

Danke und Grüße

Thomas

Re: neue Navigationsmöglichkeiten in R5?

Verfasst: 18. Mär 2016, 18:49
von Daimonion
Okay, konnte mir mittlerweile mit Hilfe der Demo helfen:

Code: Alles auswählen

<?php
$path = explode("|",$this->getValue("path").$this->getValue("article_id")."|");
$path1 = ((!empty($path[1])) ? $path[1] : '');
$path2 = ((!empty($path[2])) ? $path[2] : '');

$nav_main = '';
$nav_counter = 1;

foreach (rex_category::getRootCategories() as $lev1) {
	if ($lev1->isOnline(true)) {

		if ($lev1->getId() == $path1) {
			$nav_main .= '
			<li id="menupoint'.$nav_counter.'" class="menupoint"><a href="'.$lev1->getUrl().'">'.htmlspecialchars($lev1->getValue('name')).'</a>';
		} else {
   			$nav_main .= '
			<li id="menupoint'.$nav_counter.'" class="menupoint"><a href="'.$lev1->getUrl().'">'.htmlspecialchars($lev1->getValue('name')).'</a>';
		}
	
		// 1st level start
		$lev1Size = sizeof($lev1->getChildren());

			if ($lev1Size != "0") {

				$nav_main .= '<ul class="submenu">';

					// START 2nd level categories
					foreach ($lev1->getChildren() as $lev2):
						if ($lev2->isOnline(true)) {

							if ($lev2->getId() == $path2) {
								$nav_main .= '<li><div><a href="'.$lev2->getUrl().'">'.htmlspecialchars($lev2->getValue('name')).'</a></div></li>';
							} else {
								$nav_main .= '<li><div><a href="'.$lev2->getUrl().'">'.htmlspecialchars($lev2->getValue('name')).'</a></div></li>';
							}
						}
					endforeach;

				$nav_main .= '
				</ul>';

			}

		$nav_main .= '
		</li>';
	}
	$nav_counter++;
}

echo '
<div id="menubar">
	<ul id="mainMenu">
		'.$nav_main.'
	</ul>
</div>';
?>

Re: neue Navigationsmöglichkeiten in R5?

Verfasst: 29. Mär 2016, 10:13
von Peter.Bickel
Hallo Thomas,

grundsätzlich ist aus meiner Sicht die Navigation Factory vorzuziehen, da man damit sehr schnell und einfach Navigationen erzeugen kann. Die Verwendung dieser Factory ist meiner Wissens unverändert, so dass man mit der Doku für die Redaxo-Version 4 auch in der Version 5 weiter kommt:
http://www.redaxo.org/de/doku/tutorials ... avigation/
In der Redaxo-Demo wird z.B. die Sidebar-Navi mit der Navigation Factory erzeugt.

Nur wenn man das gewünschte HTML-Markup nicht mit der Factory erreichen kann, greife ich zur manuellen Erzeugung, wie bei der Demo-Hauptnavi.
Aber natürlich sind beide Wege möglich.

Lg,
Peter.