有没有办法检查Magento网站上是否有SKU列表?然后更改它找到的SKU?

时间:2014-05-23 18:49:23

标签: php magento magento-1.9 sku

我列出了400多个SKU更新,这些更新是我从他们销售的品牌中为我的客户收到的。并非列表中的所有SKU都在网站上......对于那些不在网站上的SKU,我不希望它们被添加,我只是希望它们发现的更改。那清楚了吗?我没有足够的时间单独检查它们。

这就是我需要的:一个加载.csv的php脚本,对数据库运行它,检查SKU是否存在......如果存在,则将其换成新的。如果它没有找到SKU,它要么忽略它,要么记下它&继续。 (到目前为止,如果在数据库中找不到一个SKU,我发现的每个脚本都会发出错误)

我有一个脚本,它具有类似的功能来更新价格,但我不太了解数据库,知道我应该瞄准什么,所以我犹豫是否尝试修改它&使用它(我还在和Magento擦肩而过)。

PS - 我正在使用Magento 1.7.0.2 CE

3 个答案:

答案 0 :(得分:0)

看看@ How to create an array from a CSV file using PHP and the fgetcsv function

$productModel = Mage::getModel('catalog/product');

$file = fopen('myCSVFile.csv', 'r');
while (($line = fgetcsv($file)) !== FALSE) {
    //$line is an array of the csv elements
    print_r($line);

    $productModel->getIdBySku($line);

    if($productModel->getId()){
      //found 
      //update product
      $productModel->setData('','');
      $productModel->save();
    } 
    $productModel->reset()
}
fclose($file);

答案 1 :(得分:0)

查看Magmi,(http://sourceforge.net/projects/magmi/)你可能能够做到你所需要的。

答案 2 :(得分:0)

实际上,我找到了这个简单的解决方案,这正是我所需要的&通缉。测试了本地网站&然后在现场网站上运行...完美的工作!谢谢你的帮助!

http://magentofresher.wordpress.com/2013/08/12/magento-programmatically-updating-skus-in-bulk/