TYPO3: maxW für Bilder in verschiedenen Gridelement-Spalten

Hier mal wieder ein kleines Snippet für Zwischendurch. Dieses Snippet bezieht sich auf die TYPO3 Extension „gridelements“, mit der sich schnell und einfach verschiedene Spalten in TYPO3 anlegen lassen.

Möchte man, je nach Gridelement-Spalte, auch unterschiedliche Bildgrößen festlegen (maxW / width) so lässt sich dies folgendermaßen realisieren:

tt_content.gridelements_pi1.20.10.setup {
  # ID des Gridelement
  2 < lib.gridelements.defaultGridSetup
  2 {
    columns {

      # Spalte mit der ID 1
      1 < .default
      1.renderObj.20.image.20.maxW = 327
      #1.renderObj.20.image.20.maxWInText = 327
      #1.renderObj.20.textpic.20.maxW = 327
      #1.renderObj.20.textpic.20.maxWInText = 327
      #1.renderObj.20.image.20.maxW = 327
      1.wrap = <div class="zwei_spalten_std_links">|</div>

      # Spalte mit der ID 2
      2 < .default
      2.renderObj.20.image.20.maxW = 604
      2.wrap = <div class="zwei_spalten_std_content">|</div>

    }
    wrap = <div class="zwei_spalten_std">|</div>
  }
}

Hier wird in der ersten Spalte eine maximale Bildgröße von 327 Pixeln bzw. 604 Pixeln für die andere Spalte konfiguriert. Mit den auskommentierten Zeilen könnte man auch noch konkrete Einstellungen für Bilder mit Text etc. einstellen.

10 Kommentare

  • Bettina Petri

    Hallo Paul,

    kann ich da auch minW oder width verwenden und kann ich da auch eine Bildhöhe mit crop angeben? Wäre supi, wenn du mir helfen könntest, bekomm das irgendwie nicht hin, oder geht das gar nicht?

    Schöne Grüße
    Bettina

    • Hallo,
      das sollte so funktionieren:

      renderObj.20.image.20.1.maxH >
      renderObj.20.image.20.1.maxW >
      renderObj.20.image.20.1.file.width = 150c
      renderObj.20.image.20.1.file.height = 150c

  • In der Tat scheint tt_content nichts für eine maximale Bildhöhe in Content Elementen vorgesehen zu haben, die man hier manipulieren könnte.

  • Bettina Petri

    Hallo Paul, danke für die schnell Antwort, also geht das gar nicht? Wie löst du dieses Problem dann wenn ich fragen darf?

    Lg Bettina

  • Ich kann mich jetzt an keinen konkreten Fall erinnern, bei dem ich in einer Gridelements Spalte darauf achten musste, dass Bilder eine maximale Höhe haben müssen. Für ganz besondere Inhaltselemente nutze ich meistens DCE und sorge dann mit dem Fluid Viewhelper dafür, dass das Bild eine maximale Höhe bekommt.

    Habe gerade noch gesehen, dass tt_content immerhin ein Feld „equalH“ bereithält, welches aber eigentlich dafür gedacht ist, auf das Feld „imageheight“ von tt_content Elementen zuzugreifen. Du kannst ja mal etwas ála

    [….].1.renderObj.20.image.20.equalH = 327

    ausprobieren.

    • Bettina Petri

      danke euch für eure Hilfe, aber irgendwie funktioniert es nicht…

      renderObj.20.image.20.1.maxH >
      renderObj.20.image.20.1.maxW >
      renderObj.20.image.20.1.file.width = 150c
      renderObj.20.image.20.1.file.height = 150c

      Bei dieser Möglichkeit nimmt er mir zwar die Höhe, aber er ignoriert den Wert für die Breite…!?

      renderObj.20.image.20.equalH = 327 das hat gar nicht funktioniert

      • mmh bei uns funktioniert. Bei meinem Beispiel muss natürlich noch die colPos ID beachtet werden. Also z.B.
        1.renderObj.20.image.20.1.file.width = 150c
        1.renderObj.20.image.20.1.file.height = 150c

        • Bettina Petri

          total blöd, wenn ich es auf tt_content anwende, funktioniert es ja, nur wenn ich es dann in gridelements einbaue funktioniert es nicht mehr, zumindest nicht die Breite!

  • Bettina Petri

    Hallo gekus,

    wäre supi, wenn du mal den gesamten Code posten könntest, dann kann ich evtl. vergleichen ob ich noch einen anderen Fehler drin hab… danke

    Lg

  • Horst Schabrutzke

    Hallo bei mir hat ein 1.renderObj.20.image.20.1.file.width.override = 115c geholfen…
    hatte auch das Problem, dass width ignoriert wurde, height aber funktionierte…

Schreibe einen Kommentar zu gekus Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Highlighting von Codes ist mit den Tags  [ts], [php], [html], [javascript], [xml] oder [code] möglich.