[TYPO3-german] Dynamisches Menü Mit Text & Bild
JoH asenau
info at cybercraft.de
Fri Nov 23 17:24:55 CET 2007
> ich möchte ein menü dynamisch erzeugen lassen, in dem jedes einzelne
> menü-item als definitionsliste ausgegeben werden soll. die liste soll
> jeweils ein text- und ein bild-element enthalten, wobei jedes element
> mit jeweils einem a-tag umschlossen werden soll.
>
> HTML:
> <dl class="naviSide">
> <dt><a href="ID">TITEL1</a></dt>
> <dd><a href="ID"><img src="fileadmin/lib/PREFIX_TITEL1.jpg"
> alt="TITEL1" /></a></dd>
> </dl>
> ...
>
> problem 1)
> wie schaffe ich es dieses 'zweiteilige' menüitem zu erzeugen? ich
> schaffe es entweder nur, BEIDE elemente mit EINEM a-tag zusammen zu
> wrappen (was nicht sein darf), oder nur EIN Element zu wrappen [1] (in
> diesem fall den text).
>
> problem 2)
> die bilddateien für die navigation lege ich im filesystem ab, wobei
> der dateiname aus einem prefix und dem entsprechenden seitentitel
> besteht. wie kann ich in TS den dateinamen erzeugen. gibt es was
> entsprechendes für 'PREFIX_'.$title.'jpg' und wie baue ich das in mein
> menü-skript ein?
Ich nehm mal nur das Nötigste:
lib.naviLeft = HMENU
lib.naviLeft {
1 = TMENU
1 {
noBlur = 1
expAll = 0
NO {
allWrap = <dl class="naviSide">|</dl>
linkWrap = <dt>|</dt>
afterImg {
import.dataWrap =
fileadmin/myfolder/PREFIX_{field:title}.jpg
}
afterImgLink = 1
afterWrap = <dd>|</dd>
}
}
}
Wobei das so IMHO keinen Sinn macht, weil dafür eigentlich das "media" Feld
der Tabelle "pages" gedacht ist. Du lädst besser das passende Bild einfach
direkt in den Seiten-Record und brauchst dann nicht mit PREFIX_blah
rumzufrickeln:
lib.naviLeft = HMENU
lib.naviLeft {
1 = TMENU
1 {
noBlur = 1
expAll = 0
NO {
allWrap = <dl class="naviSide">|</dl>
linkWrap = <dt>|</dt>
afterImg {
import = uploads/media/
import.field = media
import.listNum = 0
}
afterImgLink = 1
afterWrap = <dd>|</dd>
}
}
}
Wenn Du wirklich Wert auf das "alt" Attribut legst, das bei afterImg nicht
vorgsehen ist, kannst Du's auch so machen, mußt dann aber den Link für's
Image selbst bauen:
lib.naviLeft = HMENU
lib.naviLeft {
1 = TMENU
1 {
noBlur = 1
expAll = 0
NO {
allWrap = <dl class="naviSide">|</dl>
linkWrap = <dt>|</dt>
after {
cObject = IMAGE
cObject {
file {
import = uploads/media/
import.field = media
import.listNum = 0
}
altText.field = title
stdWrap.typolink {
parameter.field = uid
}
}
}
afterWrap = <dd>|</dd>
}
}
}
HTH
Joey
--
Wenn man keine Ahnung hat: Einfach mal Fresse halten!
(If you have no clues: simply shut your gob sometimes!)
Dieter Nuhr, German comedian
openBC/Xing: http://www.cybercraft.de
T3 cookbook: http://www.typo3experts.com
Jobs: http://www.professionals-only.com
More information about the TYPO3-german
mailing list