Ergebnis 1 bis 3 von 3

Thema: Custom Elements: Bild einbinden

  1. #1
    Contao-Nutzer
    Registriert seit
    06.06.2023.
    Beiträge
    12

    Standard Custom Elements: Bild einbinden

    Hallo zusammen,

    bestimmt eine ganz einfache Sache für diejenigen, die so was tagein, tagaus verwirklichen.

    Ich beschäftige mich zum ersten Mal mit Rocksolid Custom Elements und habe dabei eine Menge gelernt und erfolgreich umgesetzt.

    Ich baue einen Infokasten, der Felder diverser Arten beinhaltet, inklusiv Bildauswahl und -Größen. Im Backend funktioniert alles wie gewünscht.

    Was mir aber noch nicht gelungen ist, ist, das Bild im Frontend darzustellen. Egal wie ich es versuche, wird der ganze Code dafür „ignoriert“ (also es fehlt nicht nur das Bild an sich).

    Als Basis nahm ich zunächst das Beispiel-Element von RSCE. Danach Infos aus einer Menge Forumbeiträge. Es kann also sein, dass ich einiges vermasselt habe, vor allem weil ich mich mit PHP (noch) nicht auskenne.

    Die Config des entsprechenden Teils:

    PHP-Code:
    'cover' => array(
                
    'label' => array('Book cover''Book cover'),
                
    'inputType' => 'fileTree',
                
    'eval' => array(
                    
    'fieldType' => 'radio',
                    
    'filesOnly' => true,
                    
    'extensions' => 'jpg,jpeg,png,gif,svg',
                    
    'tl_class' => 'w50',
                    
    'mandatory' => true,
                    ),
            ),
    'coversize' => array(
                
    'label' => array('Cover size''Size of the cover'),
                
    'inputType' => 'imageSize',
                
    'options' => \System::getImageSizes(),
                
    'reference' => &$GLOBALS['TL_LANG']['MSC'],
                
    'eval' => array(
                    
    'tl_class' => 'w50',
                    
    'rgxp' => 'digit',
                       
    'includeBlankOption' => true,
                    ),
            ). 
    Das Template des entsprechenden Teils (zurzeit; hat sich häufig geändert, weil ich mich ja nicht damit auskenne).

    PHP-Code:
    <?php if ($image $this->getImageObject($this->image$this->size)): ?>
            <img src="<?php echo $this->getImageObject($this->image$this->size)->src ?>" alt="" />
    <?php endif ?>
    Ein Beispiel von früher (andere mittlerweile überschrieben):

    PHP-Code:
    <?php if ($image $this->arrData['getImageObject']($this->image$this->size)): ?>
                    <img src="<?php echo $image->src ?>" alt="<?php echo $image->alt ?: $image->name ?>"<?php echo $image->imgSize ?>>
                <?php endif ?>
    Also nach dem Geschwafel (sorry!):

    Wie bindet man konkret dieses Bild ein? In der ausgewählten Größe und mit Alt-Tag?

    Danke im Voraus, Paul

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

    Standard

    PHP-Code:
    <?= $this->figure($this->coverContao\StringUtil::deserialize($this->coversizetrue)) ?>
    Wenn noch Contao 4.9:
    PHP-Code:
    <?php if ($image $this->getImageObject($this->coverContao\StringUtil::deserialize($this->coversizetrue))): ?>
      <?php $this->insert('image', (array) $image?>
    <?php 
    endif; ?>
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Contao-Nutzer
    Registriert seit
    06.06.2023.
    Beiträge
    12

    Standard

    Ein Tausend Dank!

    Hätte sagen sollen, bin bei Contao 4.13. Erstes hat geklappt.

    (PHP systematisch lernen steht auf dem Plan…)

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
  •