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

Keyur Shah
quelle

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 .

Artwoz
quelle
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

Amit Bera
quelle
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