1
以下のコードで、Magentoの製品イメージをcsvファイルのproduct skuを使用して更新する必要があります。Magento製品画像のアップロードがコード内で機能していません
私のCSVファイルには、Product SKUのFirstカラムとImage Nameの2つのカラムがあります。
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
set_time_limit(0);
require_once 'app/Mage.php';
Mage::app();
//Mage::app()->getStore()->setId(Mage_Core_Model_App::ADMIN_STORE_ID);
$connection = Mage::getSingleton('core/resource')->getConnection('core_write');
define('CSV_PATH','csvfiles/');
$csv_fileoutput = CSV_PATH . "output_imagesupload.csv";
$csvfileoutput = fopen($csv_fileoutput, 'a');
$importDir = Mage::getBaseDir('media') . DS . 'incoming/';
$file_handle = fopen("csvfiles/images_insert.csv", "r");
while (!feof($file_handle)) {
$line_of_text = fgetcsv($file_handle, 1024);
$productSKU = $line_of_text[0];
$productid = Mage::getModel('catalog/product')->getIdBySku($productSKU);
if ($productid)
{
$Products = Mage::getModel('catalog/product')->loadByAttribute('sku',$productSKU);
$fileName = $line_of_text[1];
$filePath = $importDir.$fileName;
if(file_exists($filePath)) {
$Products->addImageToMediaGallery($filePath, array('image', 'small_image', 'thumbnail'), true, false);
$Products->save();
/* $Products->addImageToMediaGallery($filePath,'image',true,false);
$Products->save();
*/
/*
$setbaseimage=Mage::getModel('catalog/product')->load($objProduct);
$setbaseimage->addImageToMediaGallery($filePath,array('image','small_image','thumbnail'),true,false);
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
$setbaseimage->save();
*/
} else{
echo $productSKU . " Not done \n";
}
$my_product = Mage::getModel('catalog/product')->load($productid);
$url = $my_product->getProductUrl();
fputcsv($csvfileoutput, array($productSKU,$url));
}
else {echo $productSKU." - Product is not available\n"; }
}
fclose($file_handle);
?>
私のコードが間違っていることを教えてください。