NAV_LIST_UL - Menüpunkte einzeln anzeigen

Hier bekommst Du deutschsprachigen Support. Keine Fehlermeldungen oder Erweiterungswünsche bitte!
gab
Posts: 64
Joined: Mon 9. May 2005, 23:07

NAV_LIST_UL - Menüpunkte einzeln anzeigen

Post by gab »

Hallo,

ich arbeite mit 1.3.3 und habe eine kleine Frage zu NAV_LIST_UL. Meine Website hat folgende Struktur:

- Home
--- Ebene 1
------ Ebene 1.1
------ Ebene 1.2
--- Ebene 2
--- Ebene 3
------ Ebene 3.1
------ Ebene 3.2

Nun möchte die Menüpunkte der obersten Ebene quer über die Startseite verteilt anordnen, also "Ebene 1", "Ebene 2", "Ebene 3" sollten unabhängig und ohne Unterebenen angezeigt werden.

Für die Anzeige von "Ebene 1" z.B. nutze ich also:

Code: Select all

<div class="navi_singlepoint">{NAV_LIST_UL:P,1,1,,}</div> 
Im FF wird brav nur "Ebene 1" angezeigt, im IE7 hingegen, werden mir unterhalb von "Ebene 1" zusätzlich noch die Unterebenen 1.1 und 1.2 angezeigt. Wie krieg ich die bloss weg :?:

Danke für Eure Hilfe.
gab
User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Post by flip-flop »

Hi gab,

ich würde das so machen: <div class="navi_singlepoint">{NAV_LIST_UL:F,0,1,,}</div>

Knut
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )
gab
Posts: 64
Joined: Mon 9. May 2005, 23:07

Post by gab »

danke Knut, aber das gibt bei mir leider nicht das gewünschte Resultat. Ich teste:

{NAV_LIST_UL:F,0,1,,} = Ebene 1____Ebene 2____Ebene 3
{NAV_LIST_UL:P,1,1,,} = Ebene 1____Ebene 1.1____Ebene 1.2
{NAV_LIST_UL:FP,1,1,,} = Ebene 1____Ebene 1.1____Ebene 1.2

Das was ich möchte ist, dass nur ein einzelner Menupunkt, also z.B. nur "Ebene 1" ausgegeben wird:

{NAV_LIST_UL:????????} = Ebene 1

Kann man so was machen?

Danke und Gruss
gab
User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Post by flip-flop »

Das geht so ohne weiteres mit Bordmitteln nicht. Wäre auch komisch, wenn die Navi einzelne Menüpunkte anzeigen würde. Die ganze Automatik wäre infrage gestellt.
Wenn du nur P angibst wird auch das child Element ausgegeben. Du kann natürlich mit IDs arbeiten und die anderen Ebenen via CSS mit einem Layer überlagern, bzw. verstecken. Ist aber gefrickel.
Besteht keine Möglichkeit, diese Menüpunkte fest in die Vorlage zu schreiben?
Um die Positionen auf der Seite zu bestimmen geht es ohn IDs doch gar nicht.

Knut
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )
gab
Posts: 64
Joined: Mon 9. May 2005, 23:07

Post by gab »

Danke Knut, ist ziemlich einleuchtend was du sagst. Fest in die Vorlage schreiben kann ich natürlich, möchte ich wenns möglich ist aber verhindern...

Ich habe mir das so vorgestellt (die Navipunkte wild über die Website verteilt):

<div class="navi_singlepoint">{NAV_LIST_UL:P,1,1,,}</div>
<div class="navi_singlepoint">{NAV_LIST_UL:P,2,1,,}</div>
<div class="navi_singlepoint">{NAV_LIST_UL:P,3,1,,}</div>

IDs:
- Home
--- Ebene 1 (ID 1)
------ Ebene 1.1
------ Ebene 1.2
--- Ebene 2 (ID 2)
--- Ebene 3 (ID 3)
------ Ebene 3.1
------ Ebene 3.2

Siehst Du eine Möglichkeit in der CSS die Childelemente irgendwie auf Höhe 0 zu setzen bzw. eine andere Möglichkeit die unsichtbar zu machen?

Danke für die Hilfe.
gab
User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Post by flip-flop »

Wie gesagt, du musst IDs vergeben. Außerdem fragst du keinen Status ab, ob aktiv oder so etwas. Dann ging das sicher auch noch anders.
Siehst Du eine Möglichkeit in der CSS die Childelemente irgendwie auf Höhe 0 zu setzen bzw. eine andere Möglichkeit die unsichtbar zu machen?
Ist etwas besseres CSS. Auf einschlägigen Seiten nachlesen.
Docu NLU - KH (flip-flop) wrote:Die eigentliche Beschreibung dieser Parameter findest du hier: http://www.phpwcms.de/forum/viewtopic.php?t=12165 (Engl.)

Das ist der Ursprung:

Code: Select all

@string $parameter =
"menu_type, start_id, max_level, class_path, class_active, ul_id_name, wrap_ul_div(0 = off, 1 = <div>, 2 = <div id="">), wrap_link_text(<em>|</em>)" 
Also{NAV_LIST_UL:F,32,3,act_path,active,navID,0,<span>|</span>}
Sprich: F=aktive Ebenen aufklappen (andere zu), 32=Ebene-ID, 3=max.Tiefe Ebenen ausgeben, aktiver Pfad Klasse=act_path, aktiver Link Klasse=active, kein DIV, <span>Text wird ummantelt</span>)

menu_type:

Code: Select all

(Immer ab der eingegebenen EbeneID zu betrachten)
leer:  Der gesamte Navistruktur wird komplett geoeffnet ausgegeben
F:     Die Navistruktur wird jeweils ab der aktivierten Ebene, Ebene für Ebene ausgegeben
VCSS:  Vertikales Menü mit Flyouts (Navistruktur wird nach rechts hin in Fenstern ausgegeben)
HCSS:  Horizontales Pulldown (Navistruktur wird nach unten hin geöffnet. Ab hier ähnlich VCSS)
P:     Das Elternelement (parent) wird auch ausgegeben. Die Klasse sub_parent wird erzeugt.
FP:    Wie "F" jedoch mit Elternelement
VCSSP: Wie "VCSS" jedoch mit Elternelement
HCSSP: Wie "HCSS" jedoch mit Elternelement
start_id
-------------------
Die Ebenen-ID ab der die Navistruktur ausgegeben wird.
Die ID-Ebene selbst wird nicht ausgegeben. Dazu dient der P-Schalter.

max_level
-------------------
Die Tiefe der Navigation. (Wie viele Ebenen sollen max. ab der Startebene ausgegeben werden)

class_path
-------------------
Diese Klasse wird ausgeben bei den aktiven Strukturen im Navigationsbaum.
So kann der Link verfolgt werden (link tracing).
Bsp. mit act_path: <li class="sub_ul act_path active">

class_active
-------------------
Der absolut aktive Link
Bsp.mit active: <li class="sub_ul act_path active">

ul_id_name
-------------------
Jedem Listenelement (ul und li) wird eine eigene ID zugeordnet und ausgegeben.
Bsp. mit nav: <ul id="nav_0" class="active"> <li id="li_nav_6" class="sub_no">

wrap_ul_div(0 = off, 1 = <div>, 2 = <div id="">, 3 = <div class="">
-------------------
Die Listenelement werden je nach Schalter in div, div id oder div class eingepackt.
Bsp. bitte ausprobieren und in den generierten HTML Text schauen.

wrap_link_text(<em>|</em>)
-------------------
Der Text im Link wird ummantelt (gewrappt. (Platzhalter für den Text ist | )
Bsp.: wrap_link_text(<span>|</span>)
<li class="sub_no"><a href="index.php?fortbildung"><span>Fortbildung</span></a></li>
Ein sehr mächtiges Werkzeug!

Automatisch erzeugte Klassen in der Liste

Code: Select all

<li class="sub_parent">   ist das parent = Elternelement (Schalter P)
<li class="sub_ul_no">    Im Listenelement keine Unterstruktur)
<li class="sub_ul">       Eine Unterebene folgt und ist geöffnet
<li class="sub_ul_true">  Eine Unterebene existiert, ist jedoch geschlossen, also nicht aktiv
Der Parameter menu_type muss angegeben werden. Alle anderen Parameter sind optional.
{NAV_LIST_UL:,,,,,,,,} oder {NAV_LIST_UL:}würde funktionieren.
(Alles ist aufgeklappt ohne irgendwelche spez. Klassenangaben)
Die Kommata sind optional, müssen also in so einem Fall nicht gesetzt werden.
{NAV_LIST_UL} dagegen wird nicht funktionieren. Der Doppelpunkt muss auf jeden Fall gesetzt werden.
Knut
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )
User avatar
Detlef
Posts: 38
Joined: Fri 22. Sep 2006, 10:15
Location: Berlin

Post by Detlef »

Ich verstehe das so, dass du, wenn Ebene 1 aufgerufen wird, die Ebene 1.1 angezeigt haben möchtest.
Die Anzahl der Ebenen werden sich sicherlich in Grenzen halten.
Dann würde ich unter Admin / Seitenstruktur einfach für die Ebene 1 eine Weiterleitung auf Abene 1.1 eintragen.
gab
Posts: 64
Joined: Mon 9. May 2005, 23:07

Post by gab »

Danke für die Tipps. Ich möchte schlicht und einfach einen einzelnen Menüpunkt mit NAV_LIST_UL an beliebiger Stelle auf der Homepage platzieren können, ohne dass Childelemente angezeigt werden. Die Childelemente mit CSS unsichtbar zu machen hab ich nicht geschafft, da ich den Linktext nicht unsichtbar machen kann...

...da gibts wohl keine Lösung ohne gebastel :cry: , oder?
User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Post by flip-flop »

Es geht nicht mit NAV_LIST_UL, dafür ist die Navi nicht gemacht.

Breche das Problem einmal auf das Wesentlich runter.

1. Du möchtest einen Kategorielink ID-basiert ansprechen und ausgeben.
2. Werden Zustände abgefragt oder verlangt? (Akiv, hoover usw.)?
3. Gäbe es dazu Alternativen wenn die Zustandsfrage geklärt ist?
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )
gab
Posts: 64
Joined: Mon 9. May 2005, 23:07

Post by gab »

1. Du möchtest einen Kategorielink ID-basiert ansprechen und ausgeben.

genau
2. Werden Zustände abgefragt oder verlangt? (Akiv, hoover usw.)?
ja, ich brauche drei Zustände: aktiv, hover, normal und muss die mit CSS formatieren können.
3. Gäbe es dazu Alternativen wenn die Zustandsfrage geklärt ist?
{NAV_LIST ...}, {NAV_ROW ...} {NAV_TABLE ... } helfen mir dabei wohl nicht weiter, oder? (Ideal wäre ja so was: {NAV_LIST_SINGLEPOINT:IndexName:list_class} oder einen zusätzlichen Schalter bei NAV_LIST_UL...)

Kannst Du mir einen Tipp geben, wo ich suchen soll?
Danke und Gruss, gab
User avatar
Oliver Georgi
Site Admin
Posts: 9913
Joined: Fri 3. Oct 2003, 22:22
Contact:

Post by Oliver Georgi »

wozu Singlepoint?

Lies Dir mal die Infos zu NAV_LIST_UL genau durch. Dort kannst Du festlegen, bis in welche Tiefe die angezeigte Struktur verfolgt werden soll. Ich denke für Deinen Fall genügt, diesen Wert auf 1 zu setzen.

Oliver
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Post by flip-flop »

Singlepoint und NAV_LIST_UL: Hatten wir alles schon durch. :D

Er möchte einfach nur einen Menüpunkt darstellen und dann den nächsten an einer anderen Stelle usw.
Allerdings mit einem Zustand "activ" bzw. "active path". Das geht mit Bordmitteln noch nicht. Muss ein kleines Proggy her.

Knut
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )
User avatar
Oliver Georgi
Site Admin
Posts: 9913
Joined: Fri 3. Oct 2003, 22:22
Contact:

Post by Oliver Georgi »

Prinzipiell geht das auch mit Bordmitteln in Verbindung mit CSS. Wozu wurde schließlich position:absolute erfunden.

Oliver
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
User avatar
flip-flop
Moderator
Posts: 8178
Joined: Sat 21. May 2005, 21:25
Location: HAMM (Germany)
Contact:

Post by flip-flop »

Ja natürlich können die überflüssigen Links versteckt werden, hat er ja schon probiert aber nicht hinbekommen. War ja auch mein Vorschlag.

Trotzdem wäre ein Singlepoint Link mit Zuständen gut.

Knut
>> HowTo | DOCU | FAQ | TEMPLATES/DOCS << ( SITE )
User avatar
Oliver Georgi
Site Admin
Posts: 9913
Joined: Fri 3. Oct 2003, 22:22
Contact:

Post by Oliver Georgi »

welche überflüssigen Links. Dann sollte man mal überlegen, ob man nicht etwas an der Struktur falsch gemacht hat.

Oliver
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
Post Reply