*/ class Mage_Review_Block_Product_View extends Mage_Catalog_Block_Product_View { protected $_reviewsCollection; /** * Render block HTML * * @return string */ protected function _toHtml() { $this->getProduct()->setShortDescription(null); return parent::_toHtml(); } /** * Replace review summary html with more detailed review summary * Reviews collection count will be jerked here * * @param Mage_Catalog_Model_Product $product * @param string $templateType * @param bool $displayIfNoReviews * @return string */ public function getReviewsSummaryHtml(Mage_Catalog_Model_Product $product, $templateType = false, $displayIfNoReviews = false) { return $this->getLayout()->createBlock('rating/entity_detailed') ->setEntityId($this->getProduct()->getId()) ->toHtml() . $this->getLayout()->getBlock('product_review_list.count') ->assign('count', $this->getReviewsCollection()->getSize()) ->toHtml() ; } public function getReviewsCollection() { if (null === $this->_reviewsCollection) { $this->_reviewsCollection = Mage::getModel('review/review')->getCollection() ->addStoreFilter(Mage::app()->getStore()->getId()) ->addStatusFilter(Mage_Review_Model_Review::STATUS_APPROVED) ->addEntityFilter('product', $this->getProduct()->getId()) ->setDateOrder(); } return $this->_reviewsCollection; } /** * Force product view page behave like without options * * @return false */ public function hasOptions() { return false; } }