Contao-Camp 2024
Ergebnis 1 bis 5 von 5

Thema: [erledigt] Bilder - Metadaten überschreiben

  1. #1
    Alter Contao-Hase
    Registriert seit
    18.07.2012.
    Ort
    Löbau
    Beiträge
    1.140

    Standard [erledigt] Bilder - Metadaten überschreiben

    HeyHo,

    versuche gerade die Metadaten von Bildern zu überschreiben.

    Allerdings funktioniert das so nicht.


    PHP-Code:
                    if($objTour->file){
                        
    $objTemplate->addImage true;
                        
    $objModel FilesModel::findByUuid($objTour->file);
            
                        if(
    $objModel === null){
                            if(!
    Validator::isUuid($objTour->file)){
                                
    $objTemplate->text '<p class="error">'.$GLOBALS['TL_LANG']['ERR']['version2format'].'</p>';
                            }
                        } elseif (
    is_file(TL_ROOT '/' $objModel->path)) {
                            
    // Do not override the field now that we have a model registry (see #6303)
                            
    $arrArticle $objTour->row();
            
                            
    // Override the default image size
                            
    if($this->imgSize != '') {
                                
    $size StringUtil::deserialize($this->imgSize);
            
                                if(
    $size[0] > || $size[1] > || is_numeric($size[2])) {
                                    
    $arrArticle['size'] = $this->imgSize;
                                }
                            }
                            
                            
    $arrMeta Frontend::getMetaData($objModel->meta$objPage->language);
                            
                            
    // Use the file name as title if none is given
                            
    if($arrMeta['title'] == '') {
                                
    $arrArticle['title'] = specialchars(str_replace('_'' '$objModel->filename));
                            }
                            if(
    $arrMeta['alt'] == '') {
                                
    $arrArticle['alt'] = specialchars(str_replace('_'' '$objTour->year.' '.$objTour->title));
                            }
                            
                            
                            
    $arrArticle['singleSRC'] = $objModel->path;
                            
                            
                            
    Controller::addImageToTemplate($objTemplate$arrArticlenullnull$objModel);
                        }
                    } 
    Liebe Grüße
    WebRoxx


  2. #2
    Alter Contao-Hase
    Registriert seit
    18.07.2012.
    Ort
    Löbau
    Beiträge
    1.140

    Standard

    Ich muss das leider nochmal pushen,

    irgendwie komme ich ne dahinter, die Metadaten werden ja anscheind erst im Controller ausgelesen: https://github.com/contao/core-bundl...hp#L1552-L1606
    Liebe Grüße
    WebRoxx


  3. #3
    Alter Contao-Hase
    Registriert seit
    18.07.2012.
    Ort
    Löbau
    Beiträge
    1.140

    Standard

    so funktioniert es scheinbar

    PHP-Code:
                            $meta[$objPage->language]['alt'] = $objTour->year.' '.$objTour->title;
                            
    $objModel->meta serialize($meta); 
    wenn es eine Contao eigene lösung gibt dann her damit
    Liebe Grüße
    WebRoxx


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

    Standard

    Du musst beim zweiten Parameter von Controller::addImageToTemplate "overwriteMeta" => true übergeben und dort drin dann auch zusätzlich die entsprechenden Meta Daten in den Keys "imageTitle" und "imageUrl" bspw.
    Geändert von Spooky (01.10.2020 um 19:42 Uhr)

  5. #5
    Alter Contao-Hase
    Registriert seit
    18.07.2012.
    Ort
    Löbau
    Beiträge
    1.140

    Standard

    overWriteMeta zwar gesehn aber ne für voll genommen

    Danke
    Liebe Grüße
    WebRoxx


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
  •