[Frage] Einzelnes Bild per Fluidtemplate rendern [Gelöst]

  • Chrissli Chrissli
    Jedi-General
    0 x
    1015 Beiträge
    28 Hilfreiche Beiträge
    12. 09. 2018, 12:05

    Hallo Zusammen,

    vielleicht kann mir einer weiterhelfen, da ich bisher alles über die "alten" Templates gelöst habe bin ich nicht ganz so firm was Fluidtemplates betrifft.

    Ich habe ein Inhaltselement das im großen und ganzen die Darstellung und das Verhalten von textpic kopiert, sowohl im Backend als auch im Frontend.
    Unterschied ist, das hier nur 1 Bild angezeigt werden soll, für den Fall, dass mehrere hinterlegt wären.
    Mein Typoscript sieht so aus:

    [code]tt_content.singleimagetext = FLUIDTEMPLATE
    tt_content.singleimagetext {
    templateRootPaths.0 = templates/Resources/Private/Templates/
    partialRootPaths.0 = templates/Resources/Private/Partials/
    layoutRootPaths.0 = templates/Resources/Private/Layouts/

    templateName = singleimagetext
    dataProcessing {
    10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
    10.references.fieldName = image
    20 = TYPO3\CMS\Frontend\DataProcessing\GalleryProcessor
    }
    }
    [/code]

    Leider werden so immer alle Bilder angezeigt. Wie kann ich hier die Anzahl limitieren? Früher hätte ich mit FILES einfach maxItems=1 gesetzt, wo bzw. wie macht man das mit Fluid? Im Typoscript, als Parameter beim Processor oder im Template?

    God's in his heaven, all's right with the world

    Tags: Fluid
  • Niklas Lazinbee Niklas La...
    Sternenflotten-Admiral
    1 x
    230 Beiträge
    2 Hilfreiche Beiträge
    01. 10. 2018, 18:25 - Lösung

    Im Fluid Template könnte das so funktionieren:

    <f:for each="{images}" as="image" >
    <f:if condition="{iterator.index} == 0">
    <f:image src="{image.originalResource.publicUrl}" width="100"/>
    </f:if>
    </f:for>


  • 1
  • Niklas Lazinbee Niklas La...
    Sternenflotten-Admiral
    1 x
    230 Beiträge
    2 Hilfreiche Beiträge
    01. 10. 2018, 18:25

    Im Fluid Template könnte das so funktionieren:

    <f:for each="{images}" as="image" >
    <f:if condition="{iterator.index} == 0">
    <f:image src="{image.originalResource.publicUrl}" width="100"/>
    </f:if>
    </f:for>

  • Chrissli Chrissli
    Jedi-General
    0 x
    1015 Beiträge
    28 Hilfreiche Beiträge
    10. 10. 2018, 10:35

    Hallo Niklas

    und vielen Dank für die Antwort!
    Ich habe das noch nicht ausprobiert, da ich mir kurzfristig anderweitig helfen konnte, d.h. ohne Fluid sondern als Marker per TS gefüllt ( der klassische Weg ) mit FILES.

    Deine Lösung klingt ( leider ) plausibel. Ich hatte gehofft es gibt hier eine Möglichkeit nur einzelne Einträge aus der DB zu laden, aber dann ist das halt so.

    God's in his heaven, all's right with the world

  • 1