How To Remove The Sort By “Position” Options In Magento.?

Remove The Sort By “Position” Options In Magento:

In Magento there are 3 basic sort by options with Name, price and position which are used by to show manage product listing on the shop page respectively. In this blog we are now going to study how to remove this sort by options in Magento with steps by step way to change the code to get the desired effect.This property doesn’t come under the listed attribute in Magento so you need to change the code to get the desired effect.


  • Step 1: Navigate to the /app/design/frontend/default/your_theme/template/catalog/product/list/toolbar.phtml
  • Now look at the bottom of the file, there will be code lines looks like the below:
  • <?php echo $this->__('Sort by') ?> <select onchange="setLocation(this.value)">
    <?php foreach($this->getAvailableOrders() as $_key=>$_order): ?>
        <option value="<?php echo $this->getOrderUrl($_key, 'asc') ?>"
          <?php if($this->isOrderCurrent($_key)): ?> 
            selected="selected"<?php endif; ?>>
            <?php echo $_order ?>
        </option>
    <?php endforeach; ?>
    </select>

  • Step 2:- Change the the code with following script (just adding an if statement)
  • <?php echo $this->__('Sort by') ?> <select onchange="setLocation(this.value)">
    <?php foreach($this->getAvailableOrders() as $_key=>$_order): ?>
        <?php if ($_order != 'Position') : // Start Removing Sort By "Position" option from the list 
          ?>
            <option value="<?php echo $this->getOrderUrl($_key, 'asc') ?>"
             <?php if($this->isOrderCurrent($_key)): ?> selected="selected"
              <?php endif; ?>>
                <?php echo $_order ?>
            </option>
        <?php endif; // End Removing Sort By "Position" option from the list ?>
    <?php endforeach; ?>
    </select>
Hope it helps!!! Enjoy Magento Coding.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *