php.ini  有个值  max_input_vars 默认是 1000 
可能和版本有关,我的(php 5.5)是 2500 
变量的解释是: 
How many GET/POST/COOKIE input variables may be accepted
所以他导致的问题是 最多能接受  1000个变量 
同理适用于  函数 parse_str(string,array)
<?php
parse_str("name=Bill&age=60",$myArray);
print_r($myArray);
?>
而magento 后台在分类页 将产品分到某个分类下就是采用了 parse_str 的方法 
由此产生的问题就是 最多能将某个分类保存 1000或者1001 个产品。再多了 就会报错
Warning: parse_str(): Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini.  
in /app/code/core/Mage/Adminhtml/controllers/Catalog/CategoryController.php on line 310
所以最直接的解决办法是 增大 max_input_vars 的值 
但是 始终会有瓶颈。  
更改程序
修改 文件:
app\code\core\Mage\Adminhtml\controllers\Catalog\CategoryController.php 的函数 saveAction()
其中一段 if 程序修改为:
“` 
if (isset(data[‘category_products’]) && !category->getProductsReadonly()) { 
foreach ($exploded as $row) {
    $temp = array();
    parse_str($row, $temp);
    list($key, $value) = each($temp);
    if(!empty($key)) {
        $products[$key] = $value;
    }
}
$category->setPostedProducts($products);
}
相信你可以知道修改的程序具体位置在哪里 :)“`
此文章通过 python 爬虫创建,原文是自己的csdn 地址: magento 分类保存产品数量瓶颈