Saya menggunakan Magento CE 1.9.1
Saya membuat skrip impor untuk mengimpor produk dari penyedia xml feed.
Umpan ini diperbarui setiap hari pada jam 3 pagi. Profider saya mengirimi saya produk xml-nya saja di mana stoknya ada di tokonya.
Jadi bagaimana saya bisa memperbarui statut stok produk saya menjadi kehabisan stok (dengan sku produk) ketika sku produk tidak ada dalam umpan xml?
Saya memberi contoh untuk menjelaskan apa yang saya inginkan, data yang disediakan di xml:
Monday : Tuesday :
Sku qty Sku qty
ABC 22 ABC 12
BDE 30 FGH 4
FGH 15
Apa yang harus saya lakukan: Selasa saya harus mengatur secara program BDE produk saya menjadi "kehabisan stok" karena tidak muncul di xml.
Ada skrip impor saya:
$file = 'feed.xml';
$feed = simplexml_load_file($file);
foreach($feed as $product){
//some datas in xml feed
$sku = $product->identifiant_unique;
$prix = $product->prix;
$titre = $product->categorie3;
$quantiteStock = $product->quantiteStock;
$poid = $product->poids_net;
//Setters
$produit = Mage::getModel('catalog/product');
$produit->setName($titre.' '.$sku);
$produit->setSku($sku);
$produit->setWeight($poid);
$produit->setAttributeSetId(4);
$produit->setDescription($titre.' '.$sku);
$produit->setShortDescription($titre.' '.$sku);
$produit->setTypeId($product['type_id'])->setWebsiteIds(array(1))->setStatus(Mage_Catalog_Model_Product_Status::STATUS_ENABLED)->setVisibility(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH);
$produit->setPrice($prix);
$produit->setIsMassupdate(true);
$produit->setExcludeUrlRewrite(true);
$produit->save();
// For Inventory Management
$stockItem = Mage::getModel('cataloginventory/stock_item');
$stockItem->assignProduct($produit);
$stockItem->setData('is_in_stock', 1);
$stockItem->setData('stock_id', 1);
$stockItem->setData('store_id', 1);
$stockItem->setData('manage_stock', 1);
$stockItem->setData('use_config_manage_stock', 0);
$stockItem->setData('min_sale_qty', 1);
$stockItem->setData('use_config_min_sale_qty', 0);
$stockItem->setData('max_sale_qty', 1000);
$stockItem->setData('use_config_max_sale_qty', 0);
$stockItem->setData('qty', $quantiteStock);
$stockItem->save();
}
Terima kasih