public function getCacheKey() { if (!$this->_isCacheActive()) { parent::getCacheKey(); } $_taxRateRequest = Mage::getModel('tax/calculation')->getRateRequest(); $_customer = Mage::getSingleton('customer/session')->getCustomer(); $this->_category = Mage::getSingleton('catalog/layer')->getCurrentCategory(); $_page = $this->getPage(); $toolbar = new Mage_Catalog_Block_Product_List_Toolbar(); $cacheKey = 'ProductView_' . $this->_category->getId() . '_' . $toolbar->getCurrentOrder() . '_' . $toolbar->getCurrentDirection() . '_' . $toolbar->getCurrentMode() . '_' . $toolbar->getCurrentPage() . '_' . $toolbar->getLimit() . '_' . Mage::App()->getStore()->getCode() . '_' . Mage::App()->getStore()->getCurrentCurrencyCode() . '_' . $_customer->getGroupId() . '_' . $_taxRateRequest->getCountryId() . "_" . $_taxRateRequest->getRegionId() . "_" . $_taxRateRequest->getPostcode() . "_" . $_taxRateRequest->getCustomerClassId() . "_" . Mage::registry('current_tag') . '_' . ''; /* ... layern navigation + search */ foreach (Mage::app()->getRequest()->getParams() as $key => $value) { $cacheKey .= $key . '-' . $value . '_'; } return $cacheKey; }