Create below mentioned files in the app/core/code/local directory with complete directory structure as in Magento core.
app\code\local\Mage\Catalog\Block\Product\List\Toolbar.php
In this file replace the setCollection function with following:
app\code\local\Mage\Catalog\Block\Product\List\Toolbar.php
In this file replace the setCollection function with following:
public function setCollection($collection) { $this->_collection = $collection; $this->_collection->setCurPage($this->getCurrentPage()); // we need to set pagination only if passed value integer and more that 0 $limit = (int)$this->getLimit(); $postData = ''; if ($limit) { $this->_collection->setPageSize($limit); } if ($this->getCurrentOrder()) { /**********Alphabetic search Code Start From here**********/ $postData = Mage::app()->getRequest()->getParam('alpha').'%'; if(isset($postData['alpha']) && $postData['alpha']!= '' && trim($postData) !='ALL') { $this->_collection->setOrder($this->getCurrentOrder(), $this->getCurrentDirection())->addAttributeToFilter(array( array('attribute'=>'name', 'like'=>$postData) )); } else { $this->_collection->setOrder($this->getCurrentOrder(), $this->getCurrentDirection()); } /**********Alphabetic search Code ends here**********/ } return $this; }
app\design\frontend\default\default\template\catalog\product\list\toolbar_bottom.phtml
Open this file an replace the code with given below:
<?php $search_array = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','ALL'); /*Find if the URL already contains any querystring variable or not */ if (strstr( $this->helper('core/url')->getCurrentUrl(), "&" )) { $separator = '&'; } else { $separator = '?'; } ?> <div> <p class="view-mode-list-bot"> <?php $postData = Mage::app()->getRequest()->getParam('alpha'); foreach ($search_array as $search_array_value): /*Clean the URL*/ if (strstr( $this->helper('core/url')->getCurrentUrl(), "?" ) ) { $new_Url = $this->str_replace_once('&','?',str_replace("?alpha=".trim($postData['alpha']),'',str_replace($separator."alpha=".trim($postData['alpha']),'',$this->helper('core/url')->getCurrentUrl()))); } else { $new_Url = str_replace("?alpha=".trim($postData['alpha']),'',str_replace($separator."alpha=".trim($postData['alpha']),'',$this->helper('core/url')->getCurrentUrl())); } $alphaURL = $new_Url.$separator.'alpha='.$search_array_value; ?> <a href="<?php echo $alphaURL; ?>" title="<?php echo $_label ?>" class="<?php echo strtolower($_code); ?> <?php if($search_array_value == $postData){ echo 'remove_under'; } ?>"><?php echo $search_array_value; ?></a> <?php endforeach; ?> </p> </div>
Fist enable error file then send me magento code error so that i can help you.
ReplyDelete