Zum Inhalt springen

Mehrere Layouts mit FLUIDTEMPLATE

Erstellt am 15. September 2016 · 1 Antwort · letzte Antwort am 19. September 2016

Tags: Fluid, TYPO3 7, Frage

MoCore ·

Hi, ich war jetzt etwas länger nicht mehr Aktiv und seh FLUIDTEMPLATE zum ersten mal.
Ich hab hier ein TS Das darüber das Layout generiert allerdings ist es nur auf ein Template ausgelegt.
Ich hätte gerne ein zweites Template das man dann im Backend unter "Frontend-Layouts" Auswählen kann, Templates und alles andere ist erledigt nur das TS klappt hier nicht. ;-(

# Content

lib.content.main = CONTENT
lib.content.main {
    table = tt_content
    select {
        pidInList = this
        orderBy = sorting
        where = colPos=0
        languageField = sys_language_uid
    }
}

# Sidebar

lib.content.sidebar < lib.content.main
lib.content.sidebar {
    select {
        where = colPos=1
    }
    stdWrap.ifEmpty.cObject = CONTENT
        stdWrap.ifEmpty.cObject {
        table = tt_content
        select {
            pidInList = 1
            orderBy = sorting
            where = colPos=1
            languageField = sys_language_uid
        }
    }
}
    10 = FLUIDTEMPLATE
    10 {
        templateName = TEXT
        templateName.stdWrap.cObject = CASE
        templateName.stdWrap.cObject {
            key.data = levelfield:-1, backend_layout_next_level, slide
            key.override.field = backend_layout

			default = TEXT
            default.value = Default.html
        }

        templateRootPaths {
            0 = EXT:cfe_site/Resources/Private/Templates/Page
        }
        partialRootPaths {
            0 = EXT:cfe_site/Resources/Private/Partials/Page
        }
        layoutRootPaths {
            0 = EXT:cfe_site/Resources/Private/Layouts/Page
        }
    }
freeatweb ·

Hallo,

in den Templates/Layouts kannst du die unterschiedlichen Frontend-Layouts mit der Variable {data.layout} verarbeiten.

Wenn du in den FLUID-Templates das Frontend-Layout 1 ansprechen willst, kannst du das z.B. so machen:

<f:if condition="{data.layout} == 1">
HTML
</f:if>