Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
复制包含所有产品的magento根目录_Magento_Copy_Categories - Fatal编程技术网

复制包含所有产品的magento根目录

复制包含所有产品的magento根目录,magento,copy,categories,Magento,Copy,Categories,嗨,我有一个magento根目录,其中大约有一百万个 产品 。现在我需要将此类别的产品复制到另一个类别 你能建议我怎么做吗 因为在管理中,我尝试创建一个新类别并分配 产品 但是一次我可以分配1500,如果我手动分配的话,这将花费很长时间。 因此,请建议我如何做到这一点。假设产品类别的id为10。 您希望将所有产品复制到id为20的类别中。 运行此脚本 $sourceId = 10; $destinationId = 20; $source = Mage::getModel('catalog/ca

嗨,我有一个magento根目录,其中大约有一百万个 产品

。现在我需要将此类别的产品复制到另一个类别

你能建议我怎么做吗

因为在管理中,我尝试创建一个新类别并分配 产品

但是一次我可以分配1500,如果我手动分配的话,这将花费很长时间。

因此,请建议我如何做到这一点。

假设产品类别的id为10。
您希望将所有产品复制到id为20的类别中。
运行此脚本

$sourceId = 10;
$destinationId = 20;
$source = Mage::getModel('catalog/category')->load($sourceId);
$destination = Mage::getModel('catalog/category')->load($destinationId);

$products = $source->getProductsPosition();
$destination->setPostedProducts($products);
$destination->save();
但请记住,目标类别中的任何产品都将从该类别中删除

如果您想将已有的产品保留在目的地类别中,请使用以下方法

$sourceId = 10;
$destinationId = 20;
$source = Mage::getModel('catalog/category')->load($sourceId);
$destination = Mage::getModel('catalog/category')->load($destinationId);

$products = $source->getProductsPosition();
$destinationProducts = $destination->getProductsPosition();
$destination->setPostedProducts(array_merge($products, $destinationProducts));
$destination->save();

我正在尝试使用这个+Marius,但我一直收到外键错误。。。这对你有用吗?