使用属性从前端添加magento产品

时间:2014-02-17 11:06:55

标签: magento add product

如何使用自定义属性添加前端产品? 我有这个代码形成另一个堆栈问题

//$product = Mage::getModel('catalog/product');
$product = new Mage_Catalog_Model_Product();
echo time();
// Build the product
$product->setAttributeSetId(9);// #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(time());
$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(27));// # some cat id's,

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

//Default Magento attribute

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


//print_r($product);
try {
    $product->save();
    echo "Product Created";
}
catch (Exception $ex) {
    //Handle the error
    echo "Product Creation Failed";
}

但我也有自定义属性,以及如何从该代码添加它们。

2 个答案:

答案 0 :(得分:0)

对于您需要调用的每个属性:

$product->setData('attribute_code_here', 'Value here');

<强> [编辑]

对于是/否属性是这样的:

$product->setData('attribute_code_here', 1); //1 for Yes, 0 for No

多次选择

$product->setData('attribute_code_here', "4,6,12"); //the ids of the values concatenated by comma.

答案 1 :(得分:0)

首先将每手所有属性的产品添加到Magento中,以便了解Magento如何使用它们。加载该产品和print_r所有变量,然后使用它们保存新产品。

$_product = Mage::getModel('catalog/product')->load('PRODUCT ID');

Zend_Debug::dump($_product);

获取保存新产品所需的所有属性并执行此操作:

$_product = Mage::getModel('catalog/product');
$_product->setYourAttribute('...');
$_product->save();