删除所有类别产品

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了删除所有类别产品相关的知识,希望对你有一定的参考价值。

Change the category id and store id at the top of the script before running it. You can also remove the echo statements if you don’t want any output.
  1. <?php
  2.  
  3. $storeid = 1;
  4. $catid = 16;
  5.  
  6. deleteAllCategoryProducts($storeid,$catid);
  7.  
  8. function deleteAllCategoryProducts($storeid,$catid)
  9. {
  10. require_once 'app/Mage.php';
  11. Mage::app( "default" )->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
  12.  
  13. $_category = Mage::getModel('catalog/category')->setStoreId( $storeid );
  14. $_category = $_category->load($catid);
  15.  
  16. $subcats = $_category->getAllChildren(true); // true to get as array
  17.  
  18. foreach ($subcats as $subcatid) {
  19. echo 'Deleting from Category ID: ' . $subcatid . " ";
  20. echo 'Deleting Product IDs: ';
  21. $pids = Mage::getResourceModel('catalog/product_collection')->setStoreId($storeid)->addCategoryFilter(Mage::getModel('catalog/category')->load($subcatid))->getAllIds();
  22.  
  23. if(is_array($pids))
  24. {
  25. foreach ( $pids as $pid ) {
  26. echo $pid . ' ';
  27. $product = Mage::getSingleton('catalog/product')->load($pid)->delete();
  28. unset ($pids[$pid]);
  29. }
  30. }
  31. echo " ";
  32.  
  33. }
  34. }
  35. ?>

以上是关于删除所有类别产品的主要内容,如果未能解决你的问题,请参考以下文章

架构丰富的代码片段也应该用于产品列表吗?

如何从数据库中删除属于特定类别的 woocommerce 产品

所有产品(类别和子类别产品)都计入 magento 中的类别列表页面

如何获得所有亚马逊类别的产品

如何在 MySQL 和 PHP 中显示所有产品的所有类别?

如果 WooCommerce 结帐中存在某些产品类别,请删除其他产品