Magento : Add pagination to a custom entity listing
In this article I’ll discuss about how to you implement a pagination on your custom entity listing. Also In this blog post, we will see how to and toolbar to any custom collection. In last week I had a requirement to add paging facility in our custom module’s collection. Normally, magento provides paging in products collection. But this time, it is something different. To satisfy that requirement, I had searched the web and found the best solution which I want to discuss here.
So now follow the under given steps:
First of all, integrate the Mage_Page_Block_Html_Pager through your block :
class Your_Module_Block_Entityname_List extends Mage_Core_Block_Template
protected function _construct()
// We get our collection through our model
$this->_entities = Mage::getModel('your_module/entityname')->getCollection()
// Instantiate a new Pager block
$pager = new Mage_Page_Block_Html_Pager();
// We set our limit (here an integer store in configuration).
// /!\ The limit must be set before the collection
// Add our Pager block to our current list block
You can set the paging limits to the block: $pager->setAvailableLimit(array(1=>1, 7=>7, 128=>128)).
After that You just need to include the call in your template (.phtml) file :
<?php foreach($this->_entities as $entity) : ?>
<h2><?php echo $entity->getAttribute1(); ?></h2>
<p><?php echo $entity->getAttribute2(); ?></p>
<?php endforeach; ?>
<?php echo $this->getChildHtml('pager'); ?>
That’s it. 🙂