В настоящее время я работаю над одним скриптом, который программно добавляет продукты. Прямо сейчас у меня проблема с той частью, что этот скрипт получает изображение из URL-адреса и загружает его в каталог, а затем использует его в качестве изображения продукта.
Я использую Magento 1.9.1.
Итак, вот часть скрипта, которая должна брать изображение из URL-адреса и загружать его в новый продукт как изображение продукта:
$product = Mage::getModel('catalog/product')->load($new_product_id);
$url = 'http://media.asicdn.com/images/jpgo/6080000/6089330.jpg';
$img = '/media/catalog/product/images/image1.jpg';
file_put_contents($img, file_get_contents($url));
$product->setMediaGallery (array('images'=>array (), 'values'=>array ()));
$product->addImageToMediaGallery ($img , array ('image','small_image','thumbnail'), false, false);
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
$product->save();
Когда я это делаю, я получаю сообщение об ошибке:
Fatal error: Uncaught exception 'Mage_Core_Exception' with message 'Image does not exist.' in /home/superweb/public_html/sportsdirect/app/Mage.php:595 Stack trace: #0 /home/superweb/public_html/sportsdirect/app/code/core/Mage/Catalog/Model/Product/Attribute/Backend/Media.php(274): Mage::throwException('Image does not ...') #1 /home/superweb/public_html/sportsdirect/app/code/core/Mage/Catalog/Model/Product.php(1047): Mage_Catalog_Model_Product_Attribute_Backend_Media->addImage(Object(Mage_Catalog_Model_Product), '/media/catalog/...', Array, false, false) #2 /home/superweb/public_html/sportsdirect/SignProduct.php(63): Mage_Catalog_Model_Product->addImageToMediaGallery('/media/catalog/...', Array, false, false) #3 {main} thrown in /home/superweb/public_html/sportsdirect/app/Mage.php on line 595
Товар создан, но изображения товара нет.
/media/
? Возможно, вам придется обновить свой путь на что-то вроде../media/
относительно вашего пути к скрипту. - person Renon Stewart   schedule 09.07.2014