Zum Inhalt springen

Fluidtemplate - Variablen

Erstellt am 30. Juni 2012 · 2 Antworten · letzte Antwort am 5. Juli 2012

Tags: Frage

chris_m ·

Ich habe ein Problem mit den Variablen im Fluidtemplate (Frontend-Rendering).

Im Fluid-Template kann man über

<f:format.html>{footerText}</f:format.html>

auf eine definierte Variable zugreifen.

page = PAGE
page {
    10 = FLUIDTEMPLATE
    10 {
        file = fileadmin/templates/Home.html
        partialRootPath = fileadmin/templates/Partials/
        layoutRootPath = fileadmin/templates/Layouts/
        variables {
           footerText < temp.footerText
        }
    }
}
temp.footerText = TEXT
temp.footerTEXT.value = Beispieltext

Dies funktioniert bei mir jedoch nicht. Greife ich direkt mit

f:cObject typoscriptObjectPath="lib.subtitle" />

auf eine TS-Object (lib statt temp) zu, funktioniert es problemlos. Wo liegt hier der (Denk- bzw. Verständnis-)Fehler?

chris_m ·

Ich habe das Problem mittlerweile gelöst:

Es gibt zwei Fehlerquellen:

1) Die temp.Variable muss vor dem FLUIDTEMPLATE deklariert und gefüllt werden
2) Die Variablen stehen in den Partials nur dann zur Verfügung, wenn sie als Argument übergeben werden. Dies kann entweder einzeln erfolgen oder für alle mit

<f:render partial="header" arguments="{_all}" />
jank ·

Du kannst im übrigen auch direkt aus Fluid auf TypoScript zugeifen:

<f:cObject typoscriptObjectPath="temp.footerText" />

Dabei ist zu beachten, das hierbei NICHT durch die lib.parseFunc_RTE geparsed wird.

Desweiteren:
Typoscript wird immer seriell abgearbeitet. D.h etwas, das Du irgendwo hinein kopierst (<) oder verwendest muss immer VORHER definiert werden.