2016-07-21 8 views
0

Ich möchte löschen Bundle Produkt in MagentoWie Bundle Produkt in Magneto

finde ich habe einige Tutorials löschen Produkte in Magento löschen.

Aber ich bin etwas verwirrt, diesen Code für Bundle-Produkte auch zu verwenden, weil es eine Abhängigkeit von Bundle-Produkten mit einfachen Produkten gibt.

Unten ist mein Code -

$entity_id = trim($data[0]); 

     try 
      { 
       $product = Mage::getModel('catalog/product')->load($entity_id)->delete(); 

      } 
     catch (Exception $e) 
      { 
       Mage::log("Unable to delete Product - Entity ID: ". $entity_id); 
      } 

Kann jemand bitte vorschlagen, wie zusammen mit seiner einfachen Produkt-Bundle Produkte zu löschen.

+0

Sie möchten einige spezifische Paketprodukte oder alle Paketprodukte Ihres Geschäfts löschen? –

+0

@AmitRajput Einige spezifische Bundle-Produkte durch seine entity_id. Ich habe Entitäts-ID sowohl von einfachen als auch von Bundle-Produkten. –

Antwort

0

können Sie das folgende Skript verwenden Bundle Produkt und den damit verbundenen einfachen Produkten löschen:

//bundled product id 
$id = 887; 
$itemIds = array(); 
$itemIds[] = $id; 

//Fetch all asscoiated products of bundle item 
$product = Mage::getModel('catalog/product')->setStoreId(Mage::app()->getStore()->getId())->load($id); 
$collection = $product->getTypeInstance(true) 
    ->getSelectionsCollection($product->getTypeInstance(true)->getOptionsIds($product), $product); 

foreach ($collection as $item) { 
    $itemIds[] = $item->getId(); 
} 

// Delete all products 
foreach ($itemIds as $productId) { 
    try { 
     $product = Mage::getModel('catalog/product')->load($productId)->delete(); 
     echo "<br>Product Deleted: ". $productId; 
    } catch (Exception $e) { 
     echo "<br>Unable to delete Product - Entity ID: ". $entity_id; 
    } 
} 

Wenn Sie Standalone-Skript verwenden Produkte zu löschen. Sie müssen isSecureArea Registrierung wie folgt in vor Skriptcode festlegen.

Mage::register('isSecureArea', true); 
+0

Ich habe einige feste einfache Produkte wie 10 Produkte, die wir mit anderen einfachen Produkten verkaufen, indem wir es zu einem Bundle-Produkt machen. Also wollen wir nicht fixes einfaches Produkt löschen. Ist das mit deinem Skript möglich? Weil nach meinem Verständnis alle Associated Products mit Bundle-Produkten löschen. –

+0

Sie können fixe einfache Produkte ID aus '$ itemIds' Array ausschließen –

+0

Was passiert, wenn ich direkt Entity_id (Simple und Bundle ID), die ich löschen möchte –

Verwandte Themen