Menü kategorisieren

Allgemeine Fragen, die nicht in ein anderes Forum passen

Menü kategorisieren

Beitragvon spfef am Fr 30. Jul 2010, 07:35

Hallo,
ist es eigentlich auch ohne grosse Klimmzüge möglich das Menü zu kategorisieren? Als im Menü der ersten Hierarchie einen Menüpunkt zu haben, der nur dazu dient das Untermenü anzuzeigen. Es soll also keine Seite hinterlegt sein.
Vielleicht macht es folgendes Beispiel anschaulicher
http://www.thestyleworks.de/examples/listnav5/hybrid-3.html
Hinter "Digital" soll z.B. keine Seite liegen, sondern es soll nur dazu dienen das Untermenü zu öffnen. "Xenakis" "Lynn", .. sollen dann Unterseiten sein.

Vertikal dargestellt im Defaukttheme sähe das etwa so aus:

Home
- Renaissance
- - Alberti
- - Palladio
- - Michelangelo
- Art Nouveau
- - Mackintosh
- - Guimard
[...]

Wobei eben hinter "Renaissance" und "Art Nouveau" keine Seite und auch kein Link liegen soll
spfef
Newbie
Newbie
 
Beiträge: 9
Registriert: Fr 16. Jul 2010, 06:40

Re: Menü kategorisieren

Beitragvon Jan am Fr 30. Jul 2010, 13:10

Im CMS selbst umzusetzen ist das sicherlich nicht. Ich würde dir empfehlen das %%COMPLETEMENU%% zu verwenden und einfach auf die Seiten, die eigentlich nur Kategorien sein sollen, die Variable %%SECTIONLIST%% als einzigen Inhalt zu setzen. Das Menü kannst du dann auf verschiedene Arten gestalten.

Für ein horizontales Menü in der Art wie von dir verlinkt würde ich reines CSS einsetzen und die oberen Menüpunkte einfach klickbar lassen, sodass sich dann die von der Variable erzeugte Liste öffnet.

Für ein vertikales Menü würde ich das Ein- und Ausklappen per Javascript vornehmen und damit die Kategorie-Seiten einfach unerreichbar machen, da ja das Script schon beim Klick reagiert. Für Nutzer mit deaktiviertem Javascript wird dann eben immer das ganze Menü angezeigt.


Eine ganz andere Möglichkeit wäre es, dir ein eigenes Menü zu schreiben. Dazu kannst du ja ein beliebiges Menü aus den CMS-Dateien (functions.inc.php und index.php) kopieren und in einen Include stecken. Dann kannst du die Menüpunkte auch nach Belieben klickbar oder nicht klickbar gestalten. Du könntest dann für jeden Menüpunkt abfragen, in welcher Ebene er ist (es gibt in den Menüfunktionen dazu Variablen) und je nach dem einen Link oder auch nur Tex ausgeben. Evtl. kannst du dafür auch die seit 0.8 verfügbaren Seitenattribute mit einem benutzerdefinierten Attribut verwenden, z.B. um zu kennzeichnen, welche Seiten nur Kategorien sein sollen: http://wiki.cms-db.de/de/advanced/includes#zugriff-auf-seitenattribute
Entwickler von cms -db
Entwickelt und getestet unter Ubuntu. Bei der Erstellung von Websites sollten die Überschriften (<h1> bis <h6>) richtig verwendet werden.
Jan
Administrator
Administrator
 
Beiträge: 242
Registriert: Fr 7. Dez 2007, 17:06

Re: Menü kategorisieren

Beitragvon spfef am Fr 30. Jul 2010, 14:01

Jan hat geschrieben:Im CMS selbst umzusetzen ist das sicherlich nicht. Ich würde dir empfehlen das %%COMPLETEMENU%% zu verwenden und einfach auf die Seiten, die eigentlich nur Kategorien sein sollen, die Variable %%SECTIONLIST%% als einzigen Inhalt zu setzen. Das Menü kannst du dann auf verschiedene Arten gestalten.


Das kommt schon in die Richtung. Allerdings ist an %%SECTIONLIST%% etwas unschön, dass dann der Inhalt der ganzen Seiten dargestellt wird. %%COMPLETESUBMENU%% halte ich hier für besser geeignet, da es ja wohl auch nur die Unterseiten der aktuellen Seite anzeigt (noch nicht getestet), wenn es nur eine Verschachtelungsebene gibt.
Also:
Topmenü:
Seite 1 | Seite 2
und unter Seite 2 gibt es dann wieder
Unterseite 1 | Unterseite 2
aber bei den Unterseiten keine weitere verschachtelung mehr.

Schön wäre, wenn man noch einen Anrisstext aus der Seite dazu einstellen könnte mit einem Link "weiterlesen/mehr"

Jan hat geschrieben:Für ein horizontales Menü in der Art wie von dir verlinkt würde ich reines CSS einsetzen und die oberen Menüpunkte einfach klickbar lassen, sodass sich dann die von der Variable erzeugte Liste öffnet.


So war auch mein Gedanke

Jan hat geschrieben:Eine ganz andere Möglichkeit wäre es, dir ein eigenes Menü zu schreiben. Dazu kannst du ja ein beliebiges Menü aus den CMS-Dateien (functions.inc.php und index.php) kopieren und in einen Include stecken. Dann kannst du die Menüpunkte auch nach Belieben klickbar oder nicht klickbar gestalten. Du könntest dann für jeden Menüpunkt abfragen, in welcher Ebene er ist (es gibt in den Menüfunktionen dazu Variablen) und je nach dem einen Link oder auch nur Tex ausgeben. Evtl. kannst du dafür auch die seit 0.8 verfügbaren Seitenattribute mit einem benutzerdefinierten Attribut verwenden, z.B. um zu kennzeichnen, welche Seiten nur Kategorien sein sollen: http://wiki.cms-db.de/de/advanced/includes#zugriff-auf-seitenattribute


Das ist natürlich auch noch eine Möglichkeit, damit würden sich sogar die Anrisstexte evtl. realisieren lassen.
spfef
Newbie
Newbie
 
Beiträge: 9
Registriert: Fr 16. Jul 2010, 06:40

Re: Menü kategorisieren

Beitragvon Jan am Fr 30. Jul 2010, 15:10

Die Anrisstexte wären sogar eine Option, die im CMS selbst ihren Platz finden könnte. Ich stelle mir das so vor, dass in der SECTIONLIST, falls ein separater Anrisstext als Seitenattribut festgelegt wurde, dieser statt dem automatisch erzeugten Anrisstext angezeigt wird. Im Prinzip könnte man dafür sogar die Meta-Tag-Beschreibung verwenden, die ja jetzt schon als Seitenattribut festgelegt werden kann.

Und für alle anderen Optionen wird es wahrscheinlich am besten sein, wenn du die mit Includes alles so anpasst, wie du es brauchst.
Entwickler von cms -db
Entwickelt und getestet unter Ubuntu. Bei der Erstellung von Websites sollten die Überschriften (<h1> bis <h6>) richtig verwendet werden.
Jan
Administrator
Administrator
 
Beiträge: 242
Registriert: Fr 7. Dez 2007, 17:06


Zurück zu Allgemeine Fragen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast