Monday 7 September 2015

Get all categories with sub-categories in Magento


Get all categories with sub-categories in Magento

<?php $_helper = Mage::helper('catalog/category') ?>
<?php $_categories = $_helper->getStoreCategories() ?>
<?php if (count($_categories) > 0): ?>
    <ul class="nav navbar-nav">
        <?php foreach($_categories as $_category): ?>
            <li class="dropdown dropdown100">
                <a href="<?php echo $_helper->getCategoryUrl($_category) ?>" class="dropdown-toggle">
                    <?php echo $_category->getName() ?>
                </a>
                <?php $_category = Mage::getModel('catalog/category')->load($_category->getId()) ?>
                <?php $_subcategories = $_category->getChildrenCategories() ?>
                <?php if (count($_subcategories) > 0): ?>
                    <ul class="dropdown-menu">
                    <li>
                       <div class="header-navigation-content">
                           <div class="row">
<?php foreach($_subcategories as $_subcategory): ?>
                                    <div class="col-md-2">
                                            <h3><?php echo $_subcategory->getName() ?></h3>
                                            <?php $_subcategories = $_subcategory->getChildrenCategories() ?>
                                            <?php if (count($_subcategories) > 0): ?>
                                                <ul>
                                                    <?php foreach($_subcategories as $_subcategory): ?>
                                                            <li>
                                                                <a href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>">
                                                                    <?php echo $_subcategory->getName(); ?>
                                                                </a>  
                                                            </li>
                                                    <?php endforeach; ?>
                                                </ul>
                                            <?php endif; ?>
                                         </div>  
                      <?php endforeach; ?>
                                 </div>  
                            </div>
                        </li>  
                    </ul>
                <?php endif; ?>
            </li>
        <?php endforeach; ?>
    </ul>
<?php endif; ?>

No comments: