Magento 以编程方式更新价格

Magento 以编程方式更新价格,magento,Magento,我正在尝试使用以下方法更新从XML文件提供的几个产品: $productid = Mage::getModel('catalog/product')->getIdBySku($url->product); echo 'Loaded Product: ' . $url->product; // Initiate product model $product = Mage::getModel('catalog/product'); $product->setPri

我正在尝试使用以下方法更新从XML文件提供的几个产品:

 $productid = Mage::getModel('catalog/product')->getIdBySku($url->product);
 echo 'Loaded Product: ' . $url->product;

 // Initiate product model
 $product = Mage::getModel('catalog/product');
 $product->setPrice($url->price);

 try 
 {
    $product->save();
        echo "Save / Updated"."\r\n";
  }
  catch (Exception $ex) {
        echo "<pre>".$ex."</pre>";
  }
ID为531的产品确实存在于我的数据库中,我只想更新它的价格


这可能是什么原因造成的?

我似乎不喜欢我对该产品进行分级定价的事实


清除它们,重新编制索引,重新创建分层定价,所有这些似乎都很好

好吧,这似乎不像我对该产品进行分层定价的事实

清除它们,重新编制索引,重新创建分层定价,所有这些看起来都很好

$product = Mage::getModel('catalog/product')->load($productid);
改为

您必须加载产品才能更新其属性。

尝试此更新

$product = Mage::getModel('catalog/product')->load($productid);
改为


您必须加载产品才能更新其属性。

Mage正在尝试插入,如果产品已经存在,您需要让它进行更新。我收集到了。是否有一种简单的方法来更新代码?我只见过$product->setXX$product->save()从未使用过Mage,但它是开源的。阅读更新方法的类,或修改set方法以执行insert或update SQL查询。Mage正在尝试插入,如果产品已经存在,您需要让它执行更新。我收集了这些信息。是否有一种简单的方法来更新代码?我只见过$product->setXX$product->save()从未使用过Mage,但它是开源的。读取更新方法的类,或修改set方法以执行insert或update SQL查询。
$product = Mage::getModel('catalog/product')->load($productid);