Php Magento删除类别中产品的分配
我将创建一个php脚本,从另一个类别中删除一个类别的产品。 例子: 有两类:cat1和cat2 cat1产品的ID为:1,2,3,4,5,6 cat2产品的ID为:2,3,4 运行脚本后,我希望cat1现在有ID为1,5,6的产品Php Magento删除类别中产品的分配,php,magento,categories,product,Php,Magento,Categories,Product,我将创建一个php脚本,从另一个类别中删除一个类别的产品。 例子: 有两类:cat1和cat2 cat1产品的ID为:1,2,3,4,5,6 cat2产品的ID为:2,3,4 运行脚本后,我希望cat1现在有ID为1,5,6的产品 private function _runScript($Cat1,$Cat2) { $category = Mage::getModel('catalog/category')->load($Cat1); $productCollec
private function _runScript($Cat1,$Cat2)
{
$category = Mage::getModel('catalog/category')->load($Cat1);
$productCollection = $category->setStoreId(0)->getProductCollection();
foreach($productCollection as $_product) {
$product = Mage::getModel('catalog/product')->load($_product->getId());
$newCategories = $origCats = $product->getCategoryIds();
if(!in_array($Cat2, $origCats)) {
$newCategories = array_diff($origCats, array($Cat2));
$product->setCategoryIds($newCategories)->save();
echo 'Assigned -- ' . $product->getId() . '<br />';
}
else{
$product = Mage::getSingleton('catalog/category_api')->removeProduct($Cat1,$product->getId());
echo 'Deleted -- ' . $product->getId() . '<br />';
}
}
echo 'Done';
}
但是当它运行函数removeProduct时,脚本停止运行。
当它第一次进入else案例时,他将产品从类别中删除,但不打印已删除-产品id 好的,但是错误是什么?定义“中断”是否会给出错误消息?通常脚本会因错误而停止!发布您收到的错误没有出现错误…我如何检查它?