如何以编程方式将新产品分配到默认类别?

时间:2014-07-07 09:24:16

标签: php magento

由于

Mage::app()->getWebsite(true)->getDefaultStore()->getRootCategoryId();

返回'2'我已写过

$productCatalog = Mage::getModel('catalog/product')->load($product->getId());
$productCatalog->setCategoryIds('2')->save();

但它不会更改产品类别 - 在“类别”标签中复选框"默认类别"没有被勾选。

2 个答案:

答案 0 :(得分:0)

假设您有一个名为$ product的产品和一个名为$ category_id

的类别ID

您可以通过执行以下操作将其置于类别中

$product->setCategoryIds(array($category_id));
$product->save();

答案 1 :(得分:0)

我认为问题在于,您将类别ID包含在单引号中。该方法期望整数数组作为其参数。所以试试这个

$category_id = Mage::app()->getWebsite(true)->getDefaultStore()->getRootCategoryId();
$productCatalog = Mage::getModel('catalog/product')->load($product->getId());
$productCatalog->setCategoryIds(array($category_id));
$productCatalog->save();