将产品库图像设置为基础,缩略图和小图像Magento

时间:2014-01-30 11:26:48

标签: image magento add frontend product

您好我正在我需要从前端添加产品的网站上工作,因为我使用以下代码

<?php //$product = Mage::getModel('catalog/product');
$product = new Mage_Catalog_Model_Product();
echo time();
// Build the product
$product->setAttributeSetId(4);// #4 is for default
$product->setTypeId('simple');

$product->setName('Some cool product name');
$product->setDescription('Full description here');
$product->setShortDescription('Short description here');
$product->setSku(2);
$product->setWeight(4.0000);
$product->setStatus(1);
$product->setVisibility(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH);//4
print_r(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH);

$product->setPrice(39.99);// # Set some price
$product->setTaxClassId(0);// # default tax class

$product->setStockData(array(
'is_in_stock' => 1,
'qty' => 99999
));

$product->setCategoryIds(array(3));// # some cat id's,

$product->setWebsiteIDs(array(1));// # Website id, 1 is default

//Default Magento attribute

$product->setCreatedAt(strtotime('now'));



// Add three image sizes to media gallery
$mediaArray = array(
    'thumbnail'   => "me.jpg",
    'small_image' => "me.jpg",
    'image'       => "me.jpg",
);

// Remove unset images, add image to gallery if exists
$importDir = Mage::getBaseDir('media') . DS . 'import/';

foreach($mediaArray as $imageType => $fileName) {
    $filePath = $importDir.$fileName;
    if ( file_exists($filePath) ) {
        try {
            $product->addImageToMediaGallery($filePath, $imageType, false);

        } catch (Exception $e) {
            echo $e->getMessage();
        }
    } else {
        echo "Product does not have an image or the path is incorrect. Path was: {$filePath}<br/>";
    }
}



//print_r($product);
try {
    $product->save();

    echo "Product Created";
}
catch (Exception $ex) {
    //Handle the error
    echo "Product Creation Failed";
}

?>

这很好,但有一个问题 它不会将图像设置为基本默认和小图像。

它添加了产品的图像,但是图像前面的复选框 未被选中。我需要检查方框。请告诉我在哪里做错了。

感谢

1 个答案:

答案 0 :(得分:1)

添加

法师::应用程序() - &GT; setCurrentStore(Mage_Core_Model_App :: ADMIN_STORE_ID);

之前

foreach($ mediaArray as $ imageType =&gt; $ fileName){