Öhm, nimms mir nicht übel - genau verstanden habe ich die Texte gerade nicht - daher poste ich mal Standard-Navigationen, wie ich sie verwende. Vielleicht kannst Du Dir da was rausziehen.
Dann sehe ich, dass Du wohl Bilder in die Navigationspunkte packen möchtest. Falls das einfach nur kleine Pfeile sind oder ähnliches, die sich wiederholen, dann geht das gut mit CSS:
#naviMain li a {
background: transparent url(../images/bgNaviMain.gif) right center no-repeat;
margin-right: 10px;
padding-right: 9px;
}
#naviMain li a.act,
#naviMain li a:hover {
background: transparent url(../images/bgNaviMainRO.gif) right center no-repeat;
}
Bilder direkt um den Link zu wrappen ginge natürlich auch, dann ist das Bild aber nicht mehr Bestandteil des Links. Wenn man unterschiedliche Bilder haben möchte, gestaltet sich das mMn schwierig, da man die Navigationspunkte eigentlich nur durchzählen kann - wenn sich dann in der Navigation etwas ändert, passen die Bilder nicht mehr zu den Links. (btw. ein Workaround über CSS-Eingebundene Bilder aus "Seite -> Resourcen -> Dateien" fände ich mal interessant. Ein Ansatz könnte "stdWrap.cObject" sein.)
Dann ist mit aufgefallen, dass du einmal "lib.sumenu" und einmal "lib.submenu" schreibst. Vielleicht liegt da der Hund begraben.
Ich laber schon wieder zuviel ;-)
Hier die TS-Beispiele:
Drei Ebenen in drei verschiedenen Marker (z. B. drei nebeneinander liegende Felder mit den einzelnen Ebenen):
# Ebene 1
temp.10 = HMENU
temp.10.entryLevel = 0
temp.10.1 = TMENU
temp.10.1 {
wrap = <div id="naviMain"><ul>|</ul></div>
NO {
ATagTitle.field = subtitle // abstract
allWrap = <li class="first">|</li> |*| <li class="middle">|</li> |*| <li class="last">|</li>
stdWrap.htmlSpecialChars = 1
}
ACT = 1
ACT {
ATagTitle.field = subtitle // abstract
allWrap = <li class="first">|</li> |*| <li class="middle">|</li> |*| <li class="last">|</li>
ATagParams = class="act"
stdWrap.htmlSpecialChars = 1
}
}
page.10.marks.NAVIMAIN < temp.10
# Ebene 2
temp.15 = HMENU
temp.15.entryLevel = 1
temp.15.1 = TMENU
temp.15.1 {
wrap = <div id="naviMain2"><ul>|</ul></div>
NO {
ATagTitle.field = subtitle // abstract
allWrap = <li class="first">|</li> |*| <li class="middle">|</li> |*| <li class="last">|</li>
stdWrap.htmlSpecialChars = 1
}
ACT = 1
ACT {
ATagTitle.field = subtitle // abstract
allWrap = <li class="first">|</li> |*| <li class="middle">|</li> |*| <li class="last">|</li>
ATagParams = class="act"
stdWrap.htmlSpecialChars = 1
}
}
page.10.marks.NAVIMAIN2 < temp.15
# Ebene 3
temp.25 = HMENU
temp.25.entryLevel = 2
temp.25.1 = TMENU
temp.25.1 {
wrap = <div id="naviMain3"><ul>|</ul></div>
NO {
ATagTitle.field = subtitle // abstract
allWrap = <li class="first">|</li> |*| <li class="middle">|</li> |*| <li class="last">|</li>
stdWrap.htmlSpecialChars = 1
}
ACT = 1
ACT {
ATagTitle.field = subtitle // abstract
allWrap = <li class="first">|</li> |*| <li class="middle">|</li> |*| <li class="last">|</li>
ATagParams = class="act"
stdWrap.htmlSpecialChars = 1
}
}
page.10.marks.NAVIMAIN3 < temp.25
Erste Ebene in einem Marker und viele weitere Ebenen in einem anderen Marker (z. B. Hauptnavi oben und alle weiteren Punkte am linken Rand):
# Ebene 1
temp.10 = HMENU
temp.10.entryLevel = 0
temp.10.1 = TMENU
temp.10.1 {
wrap = <div id="naviMain"><ul>|</ul></div>
NO {
ATagTitle.field = subtitle // abstract
allWrap (
<li class="first">|</li> |*|
<li class="middle">|</li> |*|
<li class="last">|</li>
)
stdWrap.htmlSpecialChars = 1
}
ACT < .NO
ACT = 1
ACT {
ATagParams = class="act"
}
}
page.10.marks.NAVI_MAIN < temp.10
temp.15 = HMENU
temp.15.entryLevel = 1
temp.15.1 = TMENU
temp.15.1 {
wrap = <div id="naviMain2"><ul>|</ul></div>
NO = 1
NO {
wrapItemAndSub (
<li class="first">|</li> |*|
<li class="middle">|</li> |*|
<li class="last">|</li>
)
stdWrap.htmlSpecialChars = 1
ATagTitle.field = subtitle
}
IFSUB = 1
IFSUB {
wrapItemAndSub (
<li class="first sub">|</li> |*|
<li class="middle sub">|</li> |*|
<li class="last sub">|</li>
)
stdWrap.htmlSpecialChars = 1
ATagTitle.field = subtitle
}
ACTIFSUB = 1
ACTIFSUB {
wrapItemAndSub (
<li class="first sub">|</li> |*|
<li class="middle sub">|</li> |*|
<li class="last sub">|</li>
)
stdWrap.htmlSpecialChars = 1
ATagTitle.field = subtitle
ATagParams = class="act"
}
ACT = 1
ACT {
wrapItemAndSub (
<li class="first act">|</li> |*|
<li class="middle act">|</li> |*|
<li class="last act">|</li>
)
stdWrap.htmlSpecialChars = 1
ATagTitle.field = subtitle
ATagParams = class="act"
}
}
temp.15.2 < .temp.15.1
temp.15.2.wrap = <ul>|</ul>
temp.15.3 < .temp.15.2
temp.15.4 < .temp.15.3
page.10.marks.NAVI_MAIN2 < temp.15
Hier noch ein Beispiel für eine Navigation in Form einer Pulldown-Liste (<select><option>..):
# Shortcut-Menu
shortcut = COA
shortcut {
10 = HMENU
10 {
special = directory
special.value = 1,10,9
wrap (
<div id="shortcut">
<h3>Schnellzugriff</h3>
<form id ="level1" action="index.php" method="get" enctype="multipart/formdata">
<select name="id" onChange="submit();">|</select>
<noscript><input type="image"
class="submit"
src="fileadmin/images/btnSearch.gif"
value="suchen"
title="Gehe zur Seite"
name="shortcutBtn"
onmouseover="this.src='fileadmin/images/btnSearchRO.gif'"
onmouseout="this.src='fileadmin/images/btnSearch.gif'" /></noscript>
</form></div>
)
1 = TMENU
1 {
expAll = 1
NO = 1
ACT = 1
CUR = 1
wrap = <ul>|</ul>
NO {
doNotLinkIt = 1
stdWrap.cObject = COA
stdWrap.cObject {
20 = TEXT
20.value = <option value="
30 = TEXT
30.dataWrap = {field:uid}">
40 = TEXT
40.field = nav_title // title
50 = TEXT
50.value = </option>
}
}
ACT < .NO
ACT {
stdWrap.cObject {
30.dataWrap = {field:uid}" selected="selected" class="act">
}
}
CUR < .NO
CUR {
stdWrap.cObject {
30.dataWrap = {field:uid}" selected="selected" class="cur">
}
}
}
2 < .1
2 {
NO.stdWrap.cObject.40.wrap = - |
ACT.stdWrap.cObject.40.wrap = - |
CUR.stdWrap.cObject.40.wrap = - |
}
3 < .2
3 {
NO.stdWrap.cObject.40.wrap = - - |
ACT.stdWrap.cObject.40.wrap = - - |
CUR.stdWrap.cObject.40.wrap = - - |
}
4 < .3
4 {
NO.stdWrap.cObject.40.wrap = - - - |
ACT.stdWrap.cObject.40.wrap = - - - |
CUR.stdWrap.cObject.40.wrap = - - - |
}
}
}
page.10.marks.SHORTCUT < shortcut