Skip to main content

Display Categories in Magento

Here, I will show you how you can get list of all categories of your Magento Shop.
You might want to display all categories in homepage or any CMS page. There are different ways to get the category listing. Here are some:-
Get all categories

The following code will fetch all categories (both active and inactive) that are present in your Magento Shop.
$categories = Mage::getModel('catalog/category')
                    ->getCollection()
                    ->addAttributeToSelect('*');
Get all active categories
The following code will fetch all active categories that are present in your Magento Shop. Thus filtering the inactive categories.
$categories = Mage::getModel('catalog/category')
                    ->getCollection()
                    ->addAttributeToSelect('*')
                    ->addIsActiveFilter();
Get active categories of any particular level
The following code will fetch all active categories of certain/specific level. Here, I have chosen level 1. Also sorting categories by name.
$categories = Mage::getModel('catalog/category')
                    ->getCollection()
                    ->addAttributeToSelect('*')
                    ->addIsActiveFilter()
                    ->addLevelFilter(1)
                    ->addOrderField('name');
Get store specific categories
The following code will fetch all active store specific categories. The following helper function does so:-
getStoreCategories($sorted=false, $asCollection=false, $toLoad=true)
$helper = Mage::helper('catalog/category');
 
// sorted by name, fetched as collection
$categoriesCollection $helper->getStoreCategories('name', true, false);
 
// sorted by name, fetched as array
$categoriesArray $helper->getStoreCategories('name', false, false);

Hope this helps. Thanks.

Comments

Popular posts from this blog

Parsing Domain Name From URL In PHP

To get Domain name from the url, we can use parse_url() php function. This would filter the domain name from the given url. $domain = str_ireplace ( 'www.' , '' , parse_url ( $url , PHP_URL_HOST )); This would return the google.com for both http://google.com and http://www.google.com

How to create Guest Wishlist For Magento

Add to wishlist without customer login Add three tables CREATE TABLE `wishlist` ( `wishlist_id` INT(11) NOT NULL AUTO_INCREMENT, `customer_id` INT(11) NULL DEFAULT NULL, `shared` INT(11) NULL DEFAULT NULL, `sharing_code` VARCHAR(50) NULL DEFAULT NULL, `updated_at` TIMESTAMP NULL DEFAULT NULL, `cookie` VARCHAR(255) NULL DEFAULT NULL, PRIMARY KEY (`wishlist_id`) ) COLLATE='latin1_swedish_ci' ENGINE=InnoDB AUTO_INCREMENT=0 ; CREATE TABLE `wishlist_item` ( `wishlist_item_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Wishlist item ID', `wishlist_id` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Wishlist ID', `product_id` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Product ID', `store_id` SMALLINT(5) UNSIGNED NULL DEFAULT NULL COMMENT 'Store ID', `added_at` TIMESTAMP NULL DEFAULT NULL COMMENT 'Add date and time', `description` TEXT NULL COMMENT '

Help & Support System Against COVID-19 Virus.

 Help & Support System Against COVID-19 Virus. UP Police-112 - http://112.up.gov.in/hi/Pages/complaint.aspx Corona Helpline: 18001805145 / 1075  GB Nagar CCRoom: 18004192211. Delhi CC Room: 011-23490311 Gurugram: 0124-2316100 Haryana: 0172-2570070 *For Plasma*- Noida Police: https://docs.google.com/forms/d/e/1FAIpQLSfKhjiQG80eIbcr78VGUeIA4e1W