由于
Mage::app()->getWebsite(true)->getDefaultStore()->getRootCategoryId();
返回'2'
我已写过
$productCatalog = Mage::getModel('catalog/product')->load($product->getId());
$productCatalog->setCategoryIds('2')->save();
但它不会更改产品类别 - 在“类别”标签中复选框"默认类别"没有被勾选。
答案 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();