/** * Recursively adds cms pages to top menu * * @param Varien_Data_Tree_Node $parentNode * @param Mage_Page_Block_Html_Topmenu $menuBlock * @param bool $addTags */ protected function _addHomePageToMenu($parentNode, $menuBlock, $addTags = false) { $tree = $parentNode->getTree(); $request = Mage::app()->getRequest(); $isActive = $request->getModuleName() == 'cms' && $request->getControllerName() == 'index' && $request->getActionName() == 'index'; $pageId = Mage::getStoreConfig(Mage_Cms_Helper_Page::XML_PATH_HOME_PAGE); $nodeData = array('name' => $menuBlock->__('Home'), 'id' => 'cms-node-' . $pageId, 'url' => Mage::getBaseUrl(), 'is_active' => $isActive); $categoryNode = new Varien_Data_Tree_Node($nodeData, 'id', $tree, $parentNode); $currentItems = array(); foreach ($parentNode->getChildren() as $child) { $currentItems[] = $child; $parentNode->removeChild($child); } $parentNode->addChild($categoryNode); foreach ($currentItems as $child) { $parentNode->addChild($child); } }