我有一個magento網站,我的產品通過csv文件上傳。現在我需要更新該產品的圖像。 我所有的圖像都下載並保存在我的magento網站媒體文件夾中。我用圖像文件的'SKU'和'Absolute path'創建了一個csv文件。以編程方式向Magento Products添加多個圖像
然後我試圖加載與下面的代碼
<?php
require_once 'app/Mage.php';
Mage::app();
Mage::app()->getStore()->setId(Mage_Core_Model_App::ADMIN_STORE_ID);
$importDir = Mage::getBaseDir('media') . DS . 'Products/Vases/';
$file_handle = fopen("sku_image.csv", "r");
while (($data = fgetcsv($file_handle, 1000, ",")) !== FALSE) {
$num = count($data);
$row++;
$productSKU = $data[0];
$ourProduct = Mage::getModel('catalog/product')->loadByAttribute('sku',$productSKU);
for ($c=1; $c < $num; $c++) {
$fileName = $data[$c];
$filePath = $importDir.$fileName;
if (file_exists($filePath)) {
if ($ourProduct) {
$ourProduct->addImageToMediaGallery($filePath, array('image', 'small_image', 'thumbnail'), true, false);
$ourProduct->save();
}
} else {
echo $productSKU . " not done";
echo "<br>";
}
}
}
fclose($file_handle);
?>
圖像問題是,最後的圖像設置在產品媒體屬性的所有領域。如何通過上述代碼將圖像添加到不同的媒體屬性。
我已經改變了我的代碼如下
<?php
require_once 'app/Mage.php';
Mage::app();
Mage::app()->getStore()->setId(Mage_Core_Model_App::ADMIN_STORE_ID);
$importDir = Mage::getBaseDir('media') . DS . 'Products/Vases/';
$file_handle = fopen("sku_image.csv", "r");
while (($data = fgetcsv($file_handle, 1000, ",")) !== FALSE) {
$num = count($data);
$row++;
$productSKU = $data[0];
$ourProduct = Mage::getModel('catalog/product')->loadByAttribute('sku',$productSKU);
for ($c=1; $c<$num; $c++) {
$fileName = $data[$c];
$filePath = $importDir.$fileName;
if (file_exists($filePath)) {
if ($ourProduct) {
if ($c==1) {
$ourProduct->addImageToMediaGallery($filePath, 'rotator_image', false, false);
} else {
$ourProduct->addImageToMediaGallery($filePath, null, false, false);
}
$ourProduct->save();
}
} else {
echo $productSKU . " not done";
echo "<br>";
}
}
echo "<br>";
}
fclose($file_handle);
?>
現在我面前的網站已經墜毀。無法加載我的網站中的任何產品。 任何人都有想法我失蹤?
「rotator_image」是我的屬性的屬性設置「圖像」 –
rotator_image,我不認爲這個工程,你認爲它的方式。此外,你的循環是可疑的,你似乎用for循環遍歷列。 –
我發現了這個問題。如果有任何sku有3個圖像網址,上面的代碼將爲該產品添加5個圖像。額外的2個圖像路徑與分數1('_1')下的帖子重複。這個新路徑在目錄中有任何有效的文件。這就是爲什麼我的網站正在崩潰。有什麼想法嗎 ? –