Import 使用脚本导入时不会更新产品

Import 使用脚本导入时不会更新产品,import,magento-1.7,Import,Magento 1.7,我正在使用脚本导入产品。当没有产品时,它可以完美地工作,但当我们尝试更新产品或导入更多产品时,它就不起作用了。基本上,它不会节省产品 在下面的代码$row_选项['iStockLevel']中,检查产品的数量 脚本代码为:- $product=Mage::getModel('catalog/product'); $proId=Mage::getModel('catalog/product')->getIdBySku($sku); if(

我正在使用脚本导入产品。当没有产品时,它可以完美地工作,但当我们尝试更新产品或导入更多产品时,它就不起作用了。基本上,它不会节省产品

在下面的代码$row_选项['iStockLevel']中,检查产品的数量

脚本代码为:-

        $product=Mage::getModel('catalog/product');  
        $proId=Mage::getModel('catalog/product')->getIdBySku($sku);

        if($proId){

                if($row_option['iStockLevel'])  {   

                $product->load($proId);

                $productStockData= $product->getStockData();

                   if(!$row_option['iStockLevel'])
                   {
                     $productStockData['qty']=0;
                   }
                   else{
                       $productStockData['qty']=$row_option['iStockLevel'];
                   }

                  $productStockData['is_in_stock']=1;
                  $productStockData['manage_stock'] = 1;
                  $productStockData['use_config_manage_stock'] = 0;

                    $product->setStockData($productStockData);

              try {
                   $product->save();
               }
                catch (Exception $ex) {
                    echo $ex->getMessage();
                }

  }

请帮帮我。

因为在您发布的bits中,您只是试图修改产品的库存。因此,您不需要保存产品,只需要保存该产品的库存

试试这个:

$product = Mage::getModel('catalog/product')->loadByAttribute('sku', $sku);

if ($product) {
    if ($row_option['iStockLevel']) {  

        $stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($product->getId()); 

        if (!$row_option['iStockLevel']) {
            $stock->setData('is_in_stock', 0)
            $stock->setData('qty', 0);
        } else {
            $stock->setData('is_in_stock', 1)
            $stock->setData('qty', (int)$row_option['iStockLevel']);
        }

        // Save
        $stock->save(); 
    }
}