magento addImageToMediaGallery不起作用
问题描述:
我试图以编程方式将图像添加到magento产品中,但没有运气。magento addImageToMediaGallery不起作用
我找到函数addImageToMediaGallery能做到这一点,但它不工作
$p = Mage::getModel('catalog/product')->load($id);
// save product
foreach ($imgs as $k => $img) {
$img_path = Mage::getBaseDir('media'). $img;
if(!$k) {
$p->addImageToMediaGallery($img_path , array('small_image', 'thumbnail', 'image'), false, false);
} else {
$p->addImageToMediaGallery($img_path , array(), false, false);
}
$p->save();
}
我知道
产品加载成功我尝试
$p->getName()
,我拿到冠军路径是正确的,图像确实存在
/home/tronixco/public_html/caskyco/media/temp_images/dji_phantom_4_drone_4k_hd_camerea_3_axis_gimbal_5km_range_with_28_minutes_flight_time_manfrotto_bag_pack_4_.jpg
addImageToMediaGallery正在做一些工作,因为它的图像复制到
catalog/product/d/j...
在管理面板product_edit没有什么,就像没有图像已被上传什么那么
IM运行的外部脚本并没有得到在VAR文件夹中的任何日志既不error_logs任何错误文件
这整个代码函数内部运行
product_add_images($id , $images)
磁版本是1.9.2.4
答
<?php
require_once 'app/Mage.php';
Mage::app();
Mage::app()->getStore()->setId(Mage_Core_Model_App::ADMIN_STORE_ID);
$importDir = Mage::getBaseDir('media') . DS . 'bulkimages/101/';
$productsData = array('Purple-Crown-Ring-MFAS.jpg','Purple-Crown-Ring-MFC.jpg','Purple-Crown-Ring-MSAS.jpg','Purple-Crown-Ring-MSF.jpg');
$productSKU = '111';
$ourProduct = Mage::getModel('catalog/product')->loadByAttribute('sku',$productSKU);
foreach($productsData as $fileName){
$filePath = $importDir.$fileName;
if (file_exists($filePath)) {
$ourProduct->addImageToMediaGallery($filePath, array('image', 'small_image', 'thumbnail'), false, false);
$ourProduct->save();
echo "done ";
} else {
echo $productSKU . " not done";
echo "<br>";
}
}
?>
它不工作 –
只是把你的根文件夹,并启用错误报告 – Arun
错误报告是对的,我第一次尝试把我的图片的根目录,但没有运气 –