[TYPO3-german] ifEmpty und warp: required defekt?
Gero - WebGears.de
support at webgears.de
Fri Mar 20 11:59:20 CET 2009
Daniela Waranie schrieb:
> Hallo newsgroup,
>
> leider habe ich heute ein Brett vor dem Kopf.
> Ich möchte via TypoScript eine Ausgabe für ein TemplaVoila Page Template
> erzeugen.
>
> Das gemappte (TypoScript Object Path) heißt lib.header_logo.
> Ich habe ein weiteres Feld (field_header_logo), welches nicht gemappt
> ist als Editing Type "Image field" angelegt.
>
> Der Output in lib.header_logo soll abhängig davon sein, ob in
> field_header_logo ein Bild ausgewählt wurde. Wenn kein Bild im BE
> ausgewählt wurde, dann soll das Default-Bild "header_logo.gif" genommen
> werden.
>
> Also mache ich das so:
> switchdefault_header_logo = TEXT
> switchdefault_header_logo.field = field_header_logo
> switchdefault_header_logo.ifEmpty =
> fileadmin/templates/images/header_logo.gif
>
> Das funktioniert bzgl. Default Bild auch soweit.
> Wenn jedoch ein Bild im BE ausgewählt wird wird der Dateiname auch in
> den Output geschrieben, es fehlt jedoch der path dahin
> (uploads/tx_templavoila/), der jedoch nur notwendig ist wenn ein Bild im
> BE ausgewählt wird.
>
> Also habe ich es mit diesem probiert:
> switchdefault_header_logo = TEXT
> switchdefault_header_logo.wrap = uploads/tx_templavoila/|
> switchdefault_header_logo.required = 1
> switchdefault_header_logo.field = field_header_logo
> switchdefault_header_logo.ifEmpty =
> fileadmin/templates/images/header_logo.gif
> Leider wird jetzt der wrap immer ausgeführt, also auch wenn kein Wert in
> field_header_logo angegeben ist. Ist required defekt, oder wie mache ich
> das richtig?
>
> Lieben Gruß
> Daniela Waranie
Hallo Daniela,
versuch´s mal damit:
----- TS Constants -----
topLogoPath = /uploads/media
--
----- TS Setup -----
# CSS Dynamic
css = PAGE
css {
typeNum = 100
config {
disableAllHeaderCode = 1
additionalHeaders = Content-type: text/css
}
10 = TEMPLATE
10.template = FILE
10.template.file = fileadmin/css/mod/dynamic.css
# topLogo
10.marks.TOPLOGO = TEXT
10.marks.TOPLOGO.data = levelmedia: -1, slide
10.marks.TOPLOGO.if.isTrue.data = levelmedia: -1, slide
10.marks.TOPLOGO.if.value = {page:media}
10.marks.TOPLOGO.if.insertData = 1
10.marks.TOPLOGO.wrap = background-image: url({$topLogoPath}/|);
}
--
----- dynamic.css -----
#header {
###TOPLOGO###
}
--
eingebunden wird das ganze dann mit:
page.headerData.20 = TEXT
page.headerData.20.dataWrap = <link rel="stylesheet" type="text/css"
href="index.php?id={field:uid}&type=100" />|
levelmedia: -1, slide vererbt das header pic
ich Parse damit eine CSS datei die mit Markern versehen ist.
somit kann ich per css ein header pic per default setzen, welches
dann vom TS überschrieben wird, falls ein bild vorhanden.
vor allem kann man damit nicht nur Bilder austauschen...
man kann sozusagen per Constants css dateien beeinflussen.
LG Gero
More information about the TYPO3-german
mailing list