Bilder in VM 4.2.6

  • Nach Update auf VM 4.2.6 (Joomla 4.4.2 PHP 8.2.12) findet meine Seite die Produktbilder nicht mehr.
    Da fällt mir auf, dass es die an den verschiedensten Orten gibt, zum Bleistift
    \images\stories\virtuemart\

    \images\virtuemart\

    jeweils mit Unterordnern, darin jeweils noch "resized"

    und dann noch in einigen Ordnern nach Jahr, Monat und Tag.


    Wo gehören sie eigentlich hin (damit sie gefunden werden)?

    Danke und frohes Schaffen.

  • Servus,


    die Bilder gehören in den Ordner, der für Bilder in der VM-Konfiguration im Reiter Stilvorlagen angegeben ist.

    Welches Template verwendest Du? Sind da Overrides für die Bilddarstellung?

    Es gab eine Änderung, die die Attribute width und height für img-Elemente einfügt. Bisher hat das allerdings in keinem Fall zu einem Problem geführt.
    Hast Du evtl. einen Link zur Seite, damit man sieht, wohin die Bildquelle zeigt?


    Grüße

    Stefan

  • Die verzerrten Produktbilder resultieren aus einem alten Override, da wurde die Verarbeitung geändert.

    Die Verkleinerungen der alternativen Bilder werden nicht gefunden, und zwar in

    .\components\com_virtuemart\views\productdetails\tmpl\default_images_additional.php

    in Zeile 3 denke ich:


    PHP
    1. <?php>
    2. if(VmConfig::get('add_img_main', 1))
    3. {echo $image->displayMediaThumb(array('class'=>"product-image", 'style'=>"cursor: pointer", 'data-descr'=>$image->file_description), false, '', true,$descr);
    4. echo '<a href="'. $image->file_url .'" class="product-image image-'. $i .'" style="display:none;" title="'. $image->file_meta .'" rel="vm-additional-images"></a>';}
    5. else {if(VmConfig::get('add_thumb_use_descr', false)) {$image->file_meta = $image->file_description;}echo $image->displayMediaThumb('',true,"rel='vm-additional-images'",true,$descr);}
    6. ?>

    Im Quelltext steht als Ergebnis
    "<img class="product-image" style="cursor: pointer" loading="lazy" src="/chili-24/components/com_virtuemart/assets/images/vmgeneral/warning.png" alt="Keine Abbildung gefunden " width="628" height="471">"


    Leider reicht meine Expertise nicht zur Feststellung welche Adresse da aufgerufen wird und was daran falsch ist.
    X(

  • Da scheint die erste if-Bedingung verwendet zu werden, sonst würde es class und style nicht im Ergebnis geben.


    Code
    1. function displayMediaThumb(
    2.     $imageArgs=array(),
    3.     $lightbox=true,
    4.     $effect="rel='group'",
    5.     $return = true,
    6.     $withDescr = false,
    7.     $absUrl = false,
    8.     $width=0,
    9.     $height=0
    10. )

    Das ist die Funktion im Helper mediahandler.php.
    Das $withDescr sollte nur false oder true sein. Die File Description für das Bild ist dann die Beschreibung für das Bild im Media Manager.
    Der Rest sollte so funktionieren.


    Hast Du da irgendwelche Einträge im VirtueMart Error log?
    Screenshot von den Einstellungen in der VM Konfiguration, Reiter 4, Media-Pfad?


    Bisher wissen wir nur: Die Funktion findet das Bild nicht.
    Vergleiche doch auch mal die Funktionen in default_images.php und default_images_additional.php.


    Grüße

    Stefan

  • Das Nachsehen bei VM Media hat folgendes zu Tage gefördert:
    Bei "Aktiviere dynamische Bildgrößenänderung" :
    "Dynamische Anpassung der Bildgröße ist nicht verfügbar. Die GD-Bibliothek scheint zu fehlen"


    In php.ini gd freigeschaltet
    Aktiviere dynamische Bildgrößenänderung : ja (Bei nein geht nix !)
    Größen für Vollbild und Minibild eingestellt.


    Jetzt tuts !

    :thumbup:


    PS: Versuch macht Kluch!