Ergebnis 1 bis 6 von 6

Thema: addImageToTemplate und Bildgrößen

  1. #1
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard addImageToTemplate und Bildgrößen

    1. Problem: $objBild ist leer bei diesem Vorgehen
    PHP-Code:
    $objFile = \FilesModel::findByUuid($defaultImage);
    $objBild = new \stdClass();
    \
    Controller::addImageToTemplate($objBild$objFile->row(), nullnull$objFile); 
    print_r auf $objFile->row():
    Code:
    Array
    (
        [id] => 55
        [pid] => ?`?S?????,p?
    
        [tstamp] => 1592331967
        [uuid] => ?	???????
        [type] => file
        [path] => files/demo/Kujawa_05_2020_10.jpg
        [extension] => jpg
        [hash] => cc3cb6350d374b02b5662d346476c107
        [found] => 1
        [name] => Kujawa_05_2020_10.jpg
        [importantPartX] => 0
        [importantPartY] => 0
        [importantPartWidth] => 0
        [importantPartHeight] => 0
        [meta] => 
    )
    print_r auf $objBild (wird in der Variable image gespeichert und bleibt leider leer):
    Code:
    [image] => stdClass Object
        (
            [width] => 
            [height] => 
            [picture] => Array
                (
                    [img] => Array
                        (
                            [src] => 
                            [srcset] => 
                        )
    
                    [sources] => Array
                        (
                        )
    
                    [alt] => 
                    [title] => 
                )
    
            [alt] => 
            [caption] => 
            [imageTitle] => 
            [imageUrl] => 
            [src] => 
            [singleSRC] => 
            [linkTitle] => 
            [fullsize] => 
            [addBefore] => 1
            [margin] => 
            [addImage] => 1
        )
    \Controller::addImageToTemplate macht also offensichtlich nichts mit $objFile->row(). Wo ist der Fehler?

    2. Problem: Wie bekomme ich die Bildgrößen da mit rein? In meinem Fall z.B. liegt die Bildgröße als serialisiertes Array vor:
    Code:
    a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:1:"4";}
    Es handelt sich hier um eine vordefinierte Bildgröße mit der ID 4 (Author 120x145).
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  2. #2
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Warum nutzt Du nicht den InsertTag?

    HTML-Code:
    {{picture::deineuuid?size=4}}
    Evtl. musst Du die UUID noch mit binToUuid() umformen.

  3. #3
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard

    Zitat Zitat von do_while Beitrag anzeigen
    Warum nutzt Du nicht den InsertTag?

    HTML-Code:
    {{picture::deineuuid?size=4}}
    Evtl. musst Du die UUID noch mit binToUuid() umformen.
    Auch eine Idee. Es können aber alle Bildgrößen zum Einsatz kommen, die in Contao möglich sind. Also auch die einfachen, die es schon in Contao 3 gab.

    Es macht aber wohl wenig Sinn in einem Modul mit Inserttags zu arbeiten, wenn ich doch gleich die jeweiligen Contao-Funktionen direkt aufrufen kann.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Der Umgang mit der alten addImageToTemplate Methode ist leider sehr bescheiden. Grundsätzlich kannst du sie wie hier beschrieben benutzen: https://docs.contao.org/dev/framewor...essing/legacy/

    Allerdings sind dort noch nicht alle Möglichkeiten beschrieben.

  5. #5
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard

    Ich habe ein bißchen anhand dieses Beispiels experimentiert:
    PHP-Code:
    \Controller::addImageToTemplate($objBild, array('singleSRC' => $objFile->path'size' => unserialize($imageSize)), \Config::get('maxImageWidth'), null$objFile); 
    Dieses Beispiel füllt nun endlich mein Template-Array. \Config::get('maxImageWidth') ist eigentlich unnötig und kann auch durch null ersetzt werden. Offensichtlich darf der zweite Parameter nicht $objFile->row() sein. Oder da haben die Angaben zu singleSRC und size gefehlt.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  6. #6
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Wenn der InsertTags das richtig macht, kannst Du im Source nachsehen, wie es geht

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •