Frage

Ist es möglich, dass die Produktbild -URL als Teil der Produktsammlung geladen wird?

zum Beispiel:

Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('*');

Dies fügt das Bild nicht hinzu.

War es hilfreich?

Lösung

Mach es als solches:

$collection = Mage::getModel('catalog/product')->getCollection();

$backendModel = $collection->getResource()->getAttribute('media_gallery')->getBackend();

foreach($collection as $product){
    $backendModel->afterLoad($product); //adding media gallery to the product object
    var_dump($product->getData()); //you should see media gallery information here now
}

Dies lädt das Backend -Modell und findet das Mediengalerie -Attribut für die an $product in der Schleife, anstatt das gesamte Produktmodell neu zu laden.

Andere Tipps

Diese funktionierten für mich

$collection = Mage::getModel('catalog/product')
                ->getCollection()
                ->addAttributeToSelect('image');

foreach($collection as $product){
    (string)Mage::helper('catalog/image')->init($product, 'image');
    //Or with resize
    (string)Mage::helper('catalog/image')->init($product, 'image')->resize(200);
}

Ich denke, Sie sollten in der Lage sein, über das Produkt auf die Bild -URL zugreifen zu können, wie z. B.:

$collection = Mage::getModel('catalog/product')->getCollection();

foreach ($collection as $product) {
   echo $product->getImageUrl();
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top