function getListMostViewedProducts($perPage = NULL, $currentPage = 1) { /* Always set de $perPage, by template or by config if $perPage eq 0 (zero) not limit the list */ if ($perPage === NULL) { $perPage = (int) $this->_config['qty']; } /* Show all the product list in the current store */ $storeId = Mage::app()->getStore()->getStoreId(); $this->setStoreId($storeId); $this->_productCollection = Mage::getResourceModel('reports/product_collection')->addAttributeToSelect(Mage::getSingleton('catalog/config')->getProductAttributes())->addMinimalPrice()->addFinalPrice()->addTaxPercents()->addViewsCount()->setStoreId($storeId)->addStoreFilter($storeId)->setPageSize($perPage); if ($this->_config['catsid']) { $this->addCategoryIdsFilter($this->_productCollection); } Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($this->_productCollection); Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($this->_productCollection); $this->_productCollection->setPageSize($perPage)->setCurPage($currentPage); if (method_exists($this->_productCollection, "setMaxSize")) { $this->_productCollection->setMaxSize($perPage); } if ($this->_productCollection && $this->_productCollection->getSize()) { if (method_exists($this->_productCollection, "setMaxSize")) { $this->_productCollection->setMaxSize($perPage); } } return $this->_productCollection; }