Magento delete empty categories and sub-categories

· kalpesh

Remove all empty categories and sub-categories in Magento. When there are empty categories, the website shows empty page in those categories in frontend. Create a file in the magento root, I will name it rmvEmptyCats.php, with following code:

require “app/Mage.php”;  
umask(0);  
Mage::app();

$categoryCollection = Mage::getModel(‘catalog/category’)->getCollection()  
 ->addFieldToFilter(‘level’, array(‘gteq’ => 2)); //greater than root category id

foreach($categoryCollection as $category) {  
 if ($category->getProductCount() === 0) {  
 $category->delete();  
 }  
}

echo ‘Empty Categories Deleted!’;

Now you can easily run it by navigating to http://loca.lho.st/rmvEmptyCats.php and wait for the message Empty Categories Deleted!

Note that this is going to DELETE those categories with zero product count.

#category #magento #product