Produktbasisbild ohne Produktobjekt abrufen


7

Wie kann ich das Produkt erhalten, base-imageohne das Ganze zu laden product object? Ich habe product-id,sku. [Ich weiß, wir können Produkt base imagevon bekommen product object]

Gibt es dafür die beste Methode oder den besten Trick?

Jede Hilfe wird geschätzt.

Vielen Dank

Antworten:


8

Sie können diesen Code verwenden:

$model = Mage::getResourceModel('catalog/product');
$img = $model->getAttributeRawValue($productId, 'image', $storeId);

Für "Kleines Bild" verwenden small_imageund für "Miniaturbild" thumbnail. Eine ähnliche Frage wurde hier gestellt .


guter Versuch ...) ..
Amit Bera

1

In diesem Fall verwenden Sie die afterload()Funktion.

  • Laden Sie zuerst das Produkt von loadByAttribute(), wodurch nicht das vollständige Image geladen wird. Es werden Daten aus der Produktsammlung übernommen

  • afterLoad() Wenn backend models of base image attributeSie dann ein Bild verwenden und verwenden , können Sie das Bild leicht erhalten

    $sku='wbk003c';
    
    $product = Mage::getModel('catalog/product')->loadByAttribute('sku',$sku);
    
    $attributes = $product->getTypeInstance(true)->getSetAttributes($product);
        $image = $attributes['image'];
        $backend = $image->getBackend();
        $backend->afterLoad($product); 
       echo  $Theimage = $product->getImage();

Ein weiteres Beispiel ist:

Schnelleres Laden von Medienbildern in eine Produktsammlung


Vielen Dank für die Antwort, aber ich möchte das Produkt nicht laden. Gibt es einen Trick oder eine SQL-Abfrage, um das Image der Produktbasis zu überprüfen?
Keyur Shah

Ich werde sehen ... und Sie haben abgestimmt ...
Amit Bera

Nein, ich habe das nicht getan, und ich werde niemals deine Stimme abgeben, weil ich deinen wertvollen Beitrag kenne. Aber immer noch +1 von mir
Keyur Shah
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.