magento addImageToMediaGallery 不工作
magento addImageToMediaGallery is not working
我试图以编程方式将图像添加到 magento 产品中,但没有成功。
我发现函数 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 )
magneto 版本为 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>";
}
}
?>
我试图以编程方式将图像添加到 magento 产品中,但没有成功。
我发现函数 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 )
magneto 版本为 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>";
}
}
?>