Маленькая заметка - как вывести (получить) все категории в Magento.

Получаем массив категорий:


$model = Mage::getModel('catalog/category');
$categories = $model->getCollection()->addAttributeToSelect('*')->addIsActiveFilter();

Делаем, что хотим с каждой категорией:


foreach ($categories as $category) {
        echo $category->getId();
    }
    

При необходимости можно еще отфильтровать уровень категорий, добавив фильтр:


$categories = $model->getCollection()->addAttributeToSelect('*')->addIsActiveFilter()->addLevelFilter(2);

У полученных категорий можно получить вложенные (дочерние) подкатегории:


$children = $model->load($category->getId())->getChildrenCategories();