[Frage] ID von tt_content auslesen dann mit viewhelper verarbeiten TYPO3-Version: 8.7.3

  • 0 x
    8 Beiträge
    0 Hilfreiche Beiträge
    10. 09. 2019, 23:31

    Hallo zusammen!

    Hätte folgendes Problem:

    In meiner TS:

    page.1 = FLUIDTEMPLATE
    page.1 {
    templateName = Basic1Column
    templateRootPaths.1 = fileadmin/sitedesign/Resources/Private/Templates/
    partialRootPath = fileadmin/sitedesign/Resources/Private/Partials/
    layoutRootPaths.40 = fileadmin/sitedesign/Resources/Private/Layouts/
    variables {
    contentNormal < styles.content.get
    contentHeadline < styles.content.get
    contentInhalt < styles.content.get
    contentTeaser < styles.content.get
    contentBildGanzeBreite < styles.content.get

    contentHeadline {
    select.where = colPos = 1
    }
    contentInhalt {
    select.where = colPos = 2
    }

    contentTeaser {
    select.where = colPos = 101
    }

    contentBildGanzeBreite {
    select.where = colPos = 102
    }

    }
    }

    Dann im Template:

    <f:format.raw>{contentBildGanzeBreite} </f:format.raw>

    Hier wird ein/mehrere Bilder geholt und dargestellt.

    Soweit so gut ... funktioniert bestens.

    Allerdings möchte ich gerne dieses Bild (das erste) als Background-Image erhalten.

    Dazu habe ich noch folgenden Viewhelper:

    <v:content.resources.fal table="tt_content" field="image" uid="{tt_content.uid}" as="resources">
    <!-- tt_content.uid --- durch 72 ersetzten - dann werden Resourcen angezeigt -->

    <f:for each="{resources}" as="resource">
    {resource.id}
    </f:for>
    </v:content.resources.fal>

    Wenn ich die ID vom Page Element hier hardencode, dann kommen auch die Bilder zum Vorschein.

    Allerdings benötige ich das natürlich dynamisch.

    Wie bekomme ich die ID von dem tt_content Element - also in diesem Fall von {contentBildGanzeBreite}, damit ich diese dann weiterverwenden kann.

    Habe da jetzt wohl einen ganzen Tag gegoogelt - ich finde keine Lösung.

    Danke
    Max


  • 1
  • 0 x
    8 Beiträge
    0 Hilfreiche Beiträge
    16. 09. 2019, 13:00

    Darf ich da nochmals an die Community meine Frage wiederholen. Gibt es keine Möglichkeit, die ID von einem Page Elementim TS auszulesen, wenn dieses - wie oben - eingebunden wird.
    Wäre euch für eine Antwort super dankbar!

    Danke & lg
    Max

  • Teisinger Teisinger
    Jedi-Meister
    0 x
    381 Beiträge
    26 Hilfreiche Beiträge
    16. 09. 2019, 18:22

    wirds auch keine fertige Lösung geben, da ja schon fertiges html in deinem FluidTemplate ankommt.

    Du hast nur 2 Möglichkeiten:
    a) eigenen Viewhelper schreiben und das HTML nach der ID durchforsten - sollte nicht so schwer sein den die ID beginnen alle mit id="c..."

    b) Deine Anforderung ganz anders umsetzten, also so kompliziert...

    https://github.com/groundstack-org

  • 0 x
    8 Beiträge
    0 Hilfreiche Beiträge
    17. 09. 2019, 11:14

    Hallo Teisinger! Danke für deine Antwort! Kannst du mir vielleicht einen Hinweis geben, was du mit "weniger kompliziert" meinst - dann könnte ich mich da etwas umorientieren. Was wäre hier eine unkomplizierte Variante, das zu lösen? Es geht darum, dass der Redakteur unkompliziert ein Hintergrundbild und Text über diesen Bildern hinzufügen können soll (für bestimmte Page Element). Habe bestehende Extensions ausprobiert, die alle nicht zum gewünschten Erfolg geführt haben - daher hatte ich diesen Weg ausprobiert. Was nicht funktioniert sind die Resources - die benötige ich bereits an anderer Stelle.
    Bin wieder dankbar für jeden Hinweis!
    max

  • Teisinger Teisinger
    Jedi-Meister
    0 x
    381 Beiträge
    26 Hilfreiche Beiträge
    17. 09. 2019, 16:05

    Tja die Anforderungen kenne ich leider nicht direkt, zumindest kann ich mir nichts genaues unter deiner Beschreibung vorstellen - ansonsten wäre Gridelements da vielleicht ganz Praktisch - damit kannst du im Backend / Frontend Container um Elemente erzeugen (Gridelements selbst hat natürlich auch ein Feld "Resources" dem man ein Bild geben kann...

    https://github.com/groundstack-org

  • 0 x
    8 Beiträge
    0 Hilfreiche Beiträge
    18. 09. 2019, 17:22

    Danke für deine Hilfe! Habe es nun mit der Extension "mask" gelöst. Du hattest recht, es gibt viel simplere Methoden.

  • 1