[TYPO3-german] Re: TS - mit if abfragen ob daten in DB stehen, dann Daten in einen Text einfügen

Christian Hennecke christian.hennecke at wunderknaben.com
Fri Jan 18 14:15:36 CET 2013


Am 18.01.2013 13:27, schrieb Marco Brüggemann:

Hallo Marco,

> Hallo Gruppe,
>
> vorab möchte ich kurz erklären: nach längerem hin und her habe ich
> festgestellt, dass es das beste ist, den Header-Bereich der HTML-Seite
> nicht automatisch zu erstellen, sondern einen Textblock zu erstellen und
> den <head>-Bereich so auszugeben, wie ich diesen auch haben will.
>
> Ich möchte jeder Seite im Kopfbereich ein größeres Hintergrundbild
> geben. In "subtitle" der Seitendefinition möchte ich nur den Dateinamen
> des Bildes eingeben. Über TS soll nun abgefragt werden, ob für die
> jeweilige Seite ein Eintrag in "subtitle" gibt. wenn nicht, soll der
> <header>-Bereich anders ausgegeben werden.
>
> Ich möchte das Bild nicht als Image einfügen, sondern als
> Hintergrundbild eines div-containers. der Grund hierfür ist: das Bild
> soll sich an Ausgabegeräte anpassen und für Handys gar nicht angezeigt
> werden. Daher will ich versuchen über MediaQueries per TS direkt im
> <header>-Bereich das CSS für das Hintergrundbild einzutragen.
>
> Hier mein versuch der IF-Abfrage, was aber leider nicht fuktioniert:
>
> /tmp.headerData = COA
> tmp.headerData {
>      10 = TEXT
>      10.value (
> <!doctype html>
> <html lang="de">
>            )
>      20 = COA
>      20{
>          wrap = <head>|</head>
>
>          10 = TEXT
>          10.field = subtitle
>          10.if.isTrue.fild = subtitle

Hier fehlt bei field ein "e".

>          10.value (
> <meta charset="utf-8" />
> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
> <title>BlaBla :: {page:title}</title>
> <meta name="description" content="{page:description}" />
> <style type="text/css">
>                     .subtitle:{page:subtitle}
> </style>
>              )

Das geht so nicht. Hier behindern sich die field- und value-Anweisungen. 
Die Zeile mit 10.field muß weg.

>          10.insertData = 1
>
>          20 = TEXT
>          20.field = subtitle
>          20.if.isFalse.fild = subtitle
>          20.value (
> <meta charset="utf-8" />
> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
> <title>BlaBla :: {page:title}</title>
> <meta name="description" content="{page:description}" />
>              )
>          20.insertData = 1

Gleiches Problem wie oben.

Außerdem stimmt das CSS nicht. Da müßte folgendes stehen:

.subtitle { background-image: url({page:subtitle}); }

Das wird natürlich nicht funktionieren, weil die geschweiften Klammern 
des CSS als TypoScript-Klammern interpretiert werden. Du wirst hier wohl 
nicht umhin kommen, mit mehreren Wraps zu arbeiten.

Alternativ könntest Du für das dynamische CSS eine eigene Seite mit 
anderem Typ definieren und diese als externes Stylesheet laden.

Gruß
Christian


More information about the TYPO3-german mailing list