Очень часто при разработке магазина на Magento (Мадженто), или тестировании, добавляем много категорий, потом удаляем и снова добавляем.
Через админ панель получается удалить не всегда все категории, бывают случаи когда категория не видима на фронтенд (админ панель), но существует в базе данных. И при импорте товаров или категорий, или других данных … «старые» категории критично важно удалить.
Пример как удалить все категории в CMS Magento
$categories = Mage::getModel('catalog/category')->getCollection() ->addAttributeToSelect('*') ->addAttributeToFilter('level', array("in"=>array('2','3'))); foreach ($categories as $cc) { $cc->delete(); }
где $categories — коллекция категорий Magento, с фильтром уровней категорий.
Конечно можно удалить и SQL-запросом, но лутче Magento-style.