Ergebnis 1 bis 4 von 4

Thema: singleSRC im Template funktioniert nicht - keine Pfaderstellung

  1. #1
    Community-Moderator & Contao-Urgestein Avatar von derRenner
    Registriert seit
    23.10.2012.
    Ort
    hoRn|waldviertel
    Beiträge
    2.871
    Contao-Projekt unterstützen

    Support Contao

    Standard singleSRC im Template funktioniert nicht - keine Pfaderstellung

    Hallo,

    ich versuche mich anhand der Tuts von Patrick Froch. Aktuell ein Contenelement mit nur einem Bild und diversen Feldern zum Befüllen. Das Bild will sich im Frontend aber nicht zeigen » der Pfad im <src=""> wird nicht erstellt.

    das HTML-Ergebnis:
    PHP-Code:
    <img src="" alt="" height="" width="">
    ::
    before
    </img
    die teamboxClass.php
    PHP-Code:
    <?php

    class teamboxClass extends \ContentElement
    {

        
    /**
         * Template
         * @var string
         */
        
    protected $strTemplate 'ce_beReteambox';

        
    /**
         * Compile the content element
         */
        
    protected function compile()
        {
            if (
    TL_MODE == 'BE') {
                
    $this->genBeOutput();
            } else {
                
    $this->genFeOutput();
            }
        }

        
    /**
         * Generate the content element backend
         */
        
    private function genBeOutput()
        {
            
    $this->strTemplate            'be_wildcard';
            
    $this->Template                = new \BackendTemplate($this->strTemplate);
            
    $this->Template->title        $this->headline;
            
    $this->Template->wildcard    "### beRe Teambox ###";
        }

        
    /**
         * Generate the content element frontend
         */
        
    private function genFeOutput()
        {
            
    $intId = \Contao\Input::get('id');
            
            if (
    $intId) {
                
    $objImage                        $this->loadImage($intId);
                
    $this->Template->objImage        $objImage;
                
    $this->insertImage($objImage);
            }
        }
        
        private function 
    loadImage($intId)
        {
            
    $objDb                        = \Contao\Database::getInstance();
            
    $strQuery                    "SELECT * FROM tl_content WHERE id = $intId";
            
    $objResult                    $objDB->execute($strQuery);
            return 
    $objResult;
        }
        
        private function 
    insertImage($objImage)
        {
            
    $arrData                    $objImage->fetchAssoc();
            
    $arrData['title']            = $arrData['imgtitle'];
            
    $arrData['singleSRC']        = \Contao\FilesModel::FindByUuid($arrData['singleSRC'])->path;
            
    $this->addImageToTemplate($this->Template$arrData);
        }
        


    }
    und im template
    ce_beReteambox.html5
    PHP-Code:
    <div class="<?php echo $this->class?> block">
            <div class="photoclass">
                <?php $this->insert('picture_default'$this->picture); ?>
            </div>
    </div>
    Hat jemand nen Tipp für mich, wo der Hund begraben sein könnte?
    Diesen Link habe ich schon x-mal "durchforstet" ... hilft mir aber auch nicht weiter
    Grüsse
    Bernhard


  2. #2
    Contao-Nutzer Avatar von eki89
    Registriert seit
    20.04.2016.
    Beiträge
    41
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo derRenner,

    wirft das Log denn einen Fehler oder einen Hinweis?

    Debugge (oder dumpe) doch mal an die Stelle, bevor du die Bildinstanz an das Template übergibst ($this->addImageToTemplate($this->Template, $arrData) und schau mal rein, ob $arrData neben der singleSRC auch ein size Attribut aufweist.

    Gruß

  3. #3
    Alter Contao-Hase
    Registriert seit
    02.10.2010.
    Ort
    58636 Iserlohn
    Beiträge
    1.084

    Standard

    Hallo,

    du schreibst:
    $this->Template->objImage = $objImage;
    ... rufst aber $this->picture ab.


    Ich habe es so gemacht:

    $this->Template->image => $sql->singleSRC;
    echo('<img src="'.\FilesModel::findByPk($this->image)->path.'">');


    Gruß
    Thoni
    Meine Extensions: contentmodify, dca_editor

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

    Standard

    $this->picture wird von der addImageToTemplate Funktion zum Template hinzugefügt.

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
  •