magento 自定义pager自定义每页显示多少条记录


1. 在xml中,定义catalog/product_list_toolbar为xxxx/xxxxter_toolbar

<xxxx_xxxxter_index>
        <reference name="root">
            <action method="setTemplate"><template>page/3columns.phtml</template></action>
        </reference>
        <reference name="content">
            <block type="xxxx/xxxxter_index" name="xxxx_index" template="bysoft/xxxx/xxxxter/index.phtml">
                <block type="xxxx/xxxxter_list" name="product_list" template="bysoft/xxxx/xxxxter/list.phtml">
                    <!-- <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/su.phtml</template></action> -->
                    <block type="xxxx/xxxxter_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
                        <block type="page/html_pager" name="product_list_toolbar_pager">
                        </block>
                    </block>
                    <action method="addColumnCountLayoutDepend"><layout>empty</layout><count>6</count></action>
                    <action method="addColumnCountLayoutDepend"><layout>one_column</layout><count>5</count></action>
                    <action method="addColumnCountLayoutDepend"><layout>two_columns_left</layout><count>4</count></action>
                    <action method="addColumnCountLayoutDepend"><layout>two_columns_right</layout><count>4</count></action>
                    <action method="addColumnCountLayoutDepend"><layout>three_columns</layout><count>3</count></action>
                    <action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
                </block>
            </block>
        </reference>
</xxxx_xxxxter_index>   


2. 继承Mage_Catalog_Block_Product_List_Toolbar,重写getLimit(),里面是自定义的记录数


class AAA_Xxx_Block_Xxxter_Toolbar extends Mage_Catalog_Block_Product_List_Toolbar
{
 
    /**
     * Get specified products limit display per page
     *
     * @return string
     */
    public function getLimit()
    {
    	return Mage::helper('Aaa_Xxx')->getXxxterListingNumber();
    }

}



3. 继承Mage_Catalog_Block_Product_List, 重写 _getProductCollection()。


<?php 
class Aaa_Xxx_Block_Xxxter_List extends Mage_Catalog_Block_Product_List
{
	
    protected function _getParams($param=null)
    {
        if($param)
            return Mage::app()->getRequest()->getParam($param);
        else
            return Mage::app()->getRequest()->getParams();
    }	
	
	
    /**
     * Retrieve loaded category collection
     *
     * @return Mage_Eav_Model_Entity_Collection_Abstract
     */
    protected function _getProductCollection()
    {

    	$p = $this->_getParams('p');
        if(empty($p)){
        	$p = 1;
        }
            
            
    	$this->_productCollection=Mage::getResourceModel('catalog/product_collection')
            ->addStoreFilter()
            ->setCurPage($p)
            ->setPageSize(Mage::helper('Aaa_Xxx')->getXxxterListingNumber())
            ->addAttributeToSelect("*");

    
            
        return $this->_productCollection;
    }
}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

newjueqi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值