[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
rex_navigation::factory() - REDAXO Forum
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: https://redaxo.org/slack/
acanzo
Beiträge: 126
Registriert: 26. Jul 2006, 19:53
Wohnort: Wurzen
Kontaktdaten: ICQ Website

rex_navigation::factory()

15. Apr 2009, 18:22

Hallo Community,

gibts schon ne kleine Bauanleitung zur rex_navigation::factory() der redaxo 4.2?
Danke, wäre nett.

Grüße Falko

Benutzeravatar
Alex
Beiträge: 71
Registriert: 13. Jan 2005, 16:41
Wohnort: Schortens
Kontaktdaten: ICQ Website

17. Apr 2009, 12:02

Hi,

die Nutzung ist sehr einfach.

Normale Navigation:

$nav = rex_navigation::factory();
$nav->setClasses(array('lev1', 'lev2', 'lev3'));
echo $nav->get(0,2,FALSE,TRUE);

Get-Methode im Detail:

get(1,2,3,4)

1 = Id der Wurzelkategorie
2 = Anzahl der Ebenen die angezeigt werden sollen
3 = True, wenn nur Elemente der aktiven Kategorie angezeigt werden sollen, sonst FALSE
4 = FALSE, wenn offline Elemente angezeigt werden, sonst TRUE

Sitemap:

$nav = rex_navigation::factory();
$nav->show(0,2,FALSE,TRUE);

Show-Methode im Detail:

show(1,2,3,4)

1 = Id der Wurzelkategorie
2 = Anzahl der Ebenen die angezeigt werden sollen
3 = True, wenn nur Elemente der aktiven Kategorie angezeigt werden sollen, sonst FALSE
4 = FALSE, wenn offline Elemente angezeigt werden, sonst TRUE

Breadcrump:

$nav = rex_navigation::factory();
$nav->showBreadcrump(true);

Weitere Details sind auch in der Datei class.rex_navigation.inc.php zu finden.

Hoffe, dass ich etwas helfen konnte! :)

Gruß
Alex

acanzo
Beiträge: 126
Registriert: 26. Jul 2006, 19:53
Wohnort: Wurzen
Kontaktdaten: ICQ Website

17. Apr 2009, 12:11

danke, dir, hatte mich schon etwas umgesehen.
lass doch deinen beitrag in die wiki setzen
grüße falko

Benutzeravatar
Alex
Beiträge: 71
Registriert: 13. Jan 2005, 16:41
Wohnort: Schortens
Kontaktdaten: ICQ Website

17. Apr 2009, 12:22

Ja, wäre eine Idee. Würd's auch selber machen, wenn ich das Passwort bekäme. ;-)

Vll. kann ja mal ein Mod oder Admin was dazu sagen oder die Infos direkt reinsetzen.

Gruß
Alex

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

17. Apr 2009, 17:24

Hej,
Alex hat geschrieben:Ja, wäre eine Idee. Würd's auch selber machen, wenn ich das Passwort bekäme. ;-)
schau mal bitte auf die Startseite des Wikis.

vg Thomas

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

19. Apr 2009, 13:05

hi@ all

sobald ich das auch kapiert habe, werde ich hier ein videotutorial erstellen.
gibt es schon eine anleitung, damit ich da durchsteige als nicht programmierer.
gruß richy

[EDIT]

Wenn ich das richtig verstanden habe ist das von Alex schon die komplettanleitung...

damit sollte alles machbar sein RICHTIG?

gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Alex
Beiträge: 71
Registriert: 13. Jan 2005, 16:41
Wohnort: Schortens
Kontaktdaten: ICQ Website

20. Apr 2009, 16:20

Thomas.Blum hat geschrieben: schau mal bitte auf die Startseite des Wikis.
vg Thomas
Oha! Schande über mein Haupt! Völlig überlesen. :oops:
Habe es nun eingebunden...
Richard.Laing hat geschrieben: Wenn ich das richtig verstanden habe ist das von Alex schon die komplettanleitung...

damit sollte alles machbar sein RICHTIG?

gruß richy
Ja - damit ist eigtl. alles machbar. Sollte auch als Nichtprogrammierer umsetzbar sein . Ansonsten kannst du mir auch gerne eine PN schicken, falls du Fragen hast, die mehr ins Detail gehen.

Gruß
Alex

Havard
Beiträge: 150
Registriert: 20. Jan 2005, 19:59

21. Apr 2009, 17:14

kann ich eigentlich verschiedene "normale navigationen" auch jeweils via css ein anderes aussehen verpassen? und wenn ja wie mache ich das? danke, lg!

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

21. Apr 2009, 17:20

hi
jau das geht, setz einfach die jeweilige navigation in eine eigene id also z.B.:

Code: Alles auswählen

<div id="navi1">
<?php
// navigation generator erstellen

$nav = rex_navigation::factory();

$category_id = 0; // Beginne in der Wurzelkategorie
$depth = 3; // 3 Ebene Tief
$open = FALSE; // Nicht aufklappen (hier egal da nur 1 Ebene)
$ignore_offlines = TRUE; // Offline ausblenden
echo $nav->get($category_id, $depth, $open, $ignore_offlines);
?></div>
die navis selber geben aber auch reichlich formatierungsmöglichkeiten mit. einfach mal in den quelltext schauen.

gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

23. Apr 2009, 07:33

hi@ all
wie siht es denn mit einer zweiteiligen menueführung aus?

hauptmenue oben z.B.: und die unterkategorieen nach klick auf der linken seite.

wie würde die den aufgebaut mit der menuefactory?

gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Mediastuttgart
Beiträge: 282
Registriert: 21. Mär 2005, 12:28
Kontaktdaten: Website

23. Apr 2009, 08:03

hi richy

oben horizontal:

Code: Alles auswählen

$nav_h = rex_navigation::factory();
$nav_h->show(0,1,FALSE,TRUE); 
links vertikal:

Code: Alles auswählen

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

$nav_v = rex_navigation::factory();
$nav_v->show($PATH[1],2,FALSE,TRUE); 
aber es ist noch früh am morgen, also korrigiert mich falls ich gepatzt hab ;-)

lg
michael
MEDIASTUTTGART, digitalisierte Kommunikation.

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

23. Apr 2009, 08:22

Code: Alles auswählen

Catchable fatal error: Object of class rex_navigation could not be converted to string in /var/.../include/classes/class.rex_article.inc.php(700) : eval()'d code on line 107
die ausgabe habe ich dann mit echo $nav_h; echo $nav_v; gemacht sollte doch dann so sein oder?

gruß richy

ps: jau zu früh :)
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

captFuture
Beiträge: 2
Registriert: 16. Sep 2008, 09:17

:) Auch guten morgen

23. Apr 2009, 08:50

... mir scheint die neue navi macht ein wenig ratlos ;)
(mich nämlich auch ... dafür find ich den adminbereich jetzt mal wirklich schön geworden)

Ich bin auf der suche nach dem include wo die netten funktionen zum bauen der navi drin sind weil ich mit dem "grundstyling" der navi nicht zufrieden bin.

- konkret möchte ich den text im <li> noch mit einem <span> kapseln...

Nach längerem suchen musste ich jetzt aber aufgeben :(

Wenn mir wer die datei benennen könnte wär ich glücklich...

Vielen Dank und Kaffee für alle die so wie ich schon seit 6 vor dem PC sitzen

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

23. Apr 2009, 09:58

Ich möchte für jede Ebene eine getrennte Navi machen.
Das heisst, dass das jetzt einfacher ist?

Wie sieht denn nun die Ausgabe aus? get? print?

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

23. Apr 2009, 10:21

hi
jau das sollte innerhalb php eigendlich so gehen...

Code: Alles auswählen

$nav = rex_navigation::factory();
$category_id = $this->getValue('article_id');  // Beginne in der Wurzelkategorie
$depth = 3; // 3 Ebene Tief
$open = FALSE; // Nicht aufklappen 
$ignore_offlines = TRUE; // Offline ausblenden
echo $nav->get($category_id, $depth, $open, $ignore_offlines);
gruß richy

mein problem sind die 2 teiligen navigationen
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

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

23. Apr 2009, 14:00

Ich hoffe hier werden noch mehr ideen zusammengetragen. Ich probiere grad noch die Codeschnipsel aus.

Thema CSS: in der class.rex_navigation.inc.php wird das alles schonmal schön vorbereitet. Anscheinend muss man auch dort was ändern, wenn es anders sein soll.

Benutzeravatar
elricco
Beiträge: 197
Registriert: 22. Jun 2007, 00:48
Wohnort: Bochum
Kontaktdaten: Website

23. Apr 2009, 15:04

Also bei mir klappt es auch einigermaßen gut, meine Frage bezieht sich nun auf Trennelemente.

Ich habe rechts eine Navigation, die lässt sich auch wunderbar stylen.

Alllerdings soll die Footer Navigation mit · getrennt werden.
Wie bekommt man denn sowas hin.

Wäre ganz nett zu wissen, da Navigationen ja auch gerne mal per Pipe-Symbol | getrennt werden.

Gruß Tim

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

23. Apr 2009, 15:39

Ich verstehe das auch nicht, da gibts ne neue Navi und irgendwie steht jeder im Regen.

Wie werden denn die Ebenen angesprochen? Es gibt doch in der classrexnavi auch die Möglichkeit die verschiedenen css Klassen auszugeben. Aber irgendwie muss man doch eine direkte Ansprache finden.

Es ist sich doch was dabei gedacht worden.... Danke für jeden der mithilft.

---

Im Download gibt es die 2te Ebene:

Code: Alles auswählen

<?php
$cat = OOCategory::getCategoryById($this->getValue('category_id')); 
$tree = $cat->getParentTree(); 
$id = $tree[0]->getId(); 
$subnav = rex_navigation::factory();
$subnav->setClasses(array('sub1', 'sub2'));
echo $subnav->get($id,2,FALSE,TRUE);
?>
Die 3te ebene davon funktioniert auch:

Code: Alles auswählen

<?php
$cat = OOCategory::getCategoryById($this->getValue('category_id')); 
$tree = $cat->getParentTree(); 
$id = $tree[1]->getId(); 
$subnav = rex_navigation::factory();
$subnav->setClasses(array('sub1', 'sub2'));
echo $subnav->get($id,1,FALSE,TRUE);
?>
Nur dann habe ich das Problem, dass immer die gleiche formatierung ausgegeben wird:

Code: Alles auswählen

<ul class="rex-navi1"><li id="rex-article-35" class="rex-current sub1"><a class="rex-current" href="index.php?article_id=35">Unterkategorie</a></li></ul></div>
für die 3te:

Code: Alles auswählen

<ul class="rex-navi1"><li id="rex-article-37" class="rex-normal sub1"><a href="index.php?article_id=37">die 3.te</a></li></ul>
Fragen über Fragen... -> kann aber auch sein, dass ich was falsch mache!

Benutzeravatar
Mediastuttgart
Beiträge: 282
Registriert: 21. Mär 2005, 12:28
Kontaktdaten: Website

24. Apr 2009, 09:47

also hauptnavi und unternavi getrennt voneinander funktioniert so [getestet]

Code: Alles auswählen

$rexnav1 = rex_navigation::factory();
echo $rexnav1->get(0,1,FALSE,TRUE); 
	
$P = explode("|",$this->getValue("path").$this->getValue("article_id")."|"); 
	
$rexnav2 = rex_navigation::factory();
echo $rexnav2->get($P[1],1,FALSE,TRUE); 
lg
michael
MEDIASTUTTGART, digitalisierte Kommunikation.

Benutzeravatar
Oliver.Kreischer
Beiträge: 2508
Registriert: 17. Dez 2004, 00:03
Wohnort: Velbert - LA
Kontaktdaten: Website

24. Apr 2009, 09:51

Schön wäre es noch wenn die UL Klassen sich unterscheiden würden... oder nicht?

Viele Grüße
Oliver
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

24. Apr 2009, 10:03

hallo michael

jau das war es, ich werde dann mal schnell ein video zur navigation anfertigen. naja zumindest soweit ich es selber verstehe, denke mal das es dann noch des öfteren neu gemacht werden muß :))))))

gruß und danke richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

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

24. Apr 2009, 10:09

Ein guter Ansatz. Vielen Dank

Ralf

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

24. Apr 2009, 10:30

hi@all
kurze frage noch den unterschied zwischen get und show bei der navi habe ich noch nicht ganz kapiert, wenn mir hier einen einen schubs geben kann.
gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

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

24. Apr 2009, 10:31

Es funktioniert, sieht gut aus, aber...

...es erzeugt immer noch nur die class 1.

Code: Alles auswählen

<ul class="rex-navi1"><li....></li></ul>
und für die ebene drunter:

Code: Alles auswählen

<ul class="rex-navi1"><....ategorie</a></li></ul> 
Ich dachte irgendwie kann man die klassen direkt ansprechen.

Wie dachtest du denn, das man dann die 3te Ebene anspricht?

Ralf

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

24. Apr 2009, 10:39

hi per css ein div um die navigation.

Code: Alles auswählen

#linke_nav ul li ul li ul li a {
anweisung;
}
eventuel so...
gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Zurück zu „Allgemeines [R4]“