/** * We need to rewrite this class to be able to filter hidden categories if the * flat catalog category is enabled. * * This is the version of the rewrite for Magento 1.8 and newer. * In Magento 1.8 the method signature changed. * * @param Mage_Catalog_Model_Category|int $parentNode * @param integer $recursionLevel * @param integer $storeId * @param bool $onlyActive * @return Mage_Catalog_Model_Resource_Category_Flat */ protected function _loadNodes($parentNode = null, $recursionLevel = 0, $storeId = 0, $onlyActive = true) { $nodes = parent::_loadNodes($parentNode, $recursionLevel, $storeId, $onlyActive); /* @var $helper Netzarbeiter_GroupsCatalog2_Helper_Data */ $helper = Mage::helper('netzarbeiter_groupscatalog2'); if ($helper->isModuleActive()) { // Filter out hidden nodes if (count($nodes) > 0) { $nodeIds = array_keys($nodes); $visibleIds = Mage::getResourceSingleton('netzarbeiter_groupscatalog2/filter')->getVisibleIdsFromEntityIdList(Mage_Catalog_Model_Category::ENTITY, $nodeIds, $storeId, $helper->getCustomerGroupId()); $nodes = array_intersect_key($nodes, array_flip($visibleIds)); } } return $nodes; }
/** * Load nodes by parent id * * @param unknown_type $parentNode * @param integer $recursionLevel * @param integer $storeId * @return Mage_Catalog_Model_Resource_Category_Flat */ protected function _loadNodes($parentNode = null, $recursionLevel = 0, $storeId = 0) { $nodes = parent::_loadNodes($parentNode, $recursionLevel, $storeId); foreach ($nodes as $node) { if ($node->getLevel() != 2) { if (strtolower($node->getName()) != 'get the look' && strtolower($node->getName()) != 'new arrivals') { //if ($node->getProductCount() == 0) { //if ($this->getProductCountExcludeOutStock($node) == 0) { if ($this->getProductCountCustom($node) <= 0) { unset($nodes[$node->getId()]); } } } } return $nodes; }
protected function _loadNodes($parentNode = null, $recursionLevel = 0, $storeId = 0, $onlyActive = true) { $nodes = parent::_loadNodes($parentNode, $recursionLevel, $storeId, $onlyActive); $category_collection = Mage::getResourceModel('catalog/category_collection'); $category_collection->loadProductCount($nodes, true, true); foreach ($nodes as $node) { if ($node->getDisplayMode() == "PAGE") { continue; } if ($node->getProductCount()) { continue; } unset($nodes[$node->getId()]); } return $nodes; }
protected function _loadNodes($parentNode = null, $recursionLevel = 0, $storeId = 0, $onlyActive = true) { $nodes = parent::_loadNodes($parentNode, $recursionLevel, $storeId, $onlyActive); foreach ($nodes as $node) { if ($node->getDisplayMode() == "PAGE") { continue; } if ($node->getChildrenCategories()) { continue; } if ($node->getProductCount()) { continue; } unset($nodes[$node->getId()]); } return $nodes; }