Varianten ohne Bild sollen kein anderes Bild bekommen

Hallo OXID-Freunde,

ich habe Varianenartikel.

Beispiel:

  • Vater (nicht kaufbar) (hat eigenes Bild)
    — Variante 1 hat ein eigenes Bild
    — Variante 2 hat ein eigenes Bild
    — Variante 3 hat KEIN Bild, bekommt aber das Bild von Variante 1 angezeigt

Ich möchte das unterbinden. Da soll das nopic-Bild bei variante 3 angezeigt werden.

Im Template ( productmain.tpl ) wird einfach auf $oView->getActPicture() zugegriffen.
Welches (so meine ich) in der oxarticle.php in “function getPictureGallery()” generiert wird.

Siehe hier:
http://docu.oxid-esales.com/CE/sourcecodedocumentation/4.9.5/oxarticle_8php_source.html#l02162

Dummerweise sehe ich hier nicht durch, denn ich kenne den gesamten Kontext nicht im Detail. Kann mir jemand helfen wie ich das bewerkstelligen kann?

Theroretisch müsste ich einfach nur ein


$sActPic = ...

mit einer bestimmten Bedinung ummanteln ähnlich so:


if ( !aktuelles_bild_in_der_schleife_gehört_zu_einem_anderen_artikel ) {
   $sActPic = nopic.jpg
}

Danke vorab!

Nach Stunden der Verzweiflung (wie so oft in OXID - aber es wird besser) …

Habe mittlerweile mit dem Support korrespondiert.
Die Stelle an der ich gesucht habe war eine Sackgasse (in die der Support übrigen im ersten Anlauf auch reingetappt ist ;). Denn wenn ein Kind-Artikel kein Bild hat, erbt es das vom Vater. Und im Objekt ist oxarticle__oxpic1 somit befüllt obwohl es in der Datenbank leer ist.

Die Lösung ist hier in oxarticle zu suchen. Dieses Array muss überschrieben werden:

protected $_aNonCopyParentFields = array(
    'oxarticles__oxinsert',
    'oxarticles__oxtimestamp',
    'oxarticles__oxnid',
    'oxarticles__oxid',
    'oxarticles__oxparentid',
    'oxarticles__oxpic1'
);

Und somit erbt es das oxpic1 NICHT mehr vom Vater. Sinnvollerweise sotte man auch noch oxpic2-7 oxthumb und oxicon ergänzen.

Danke für die Rückmeldung!