zoukankan      html  css  js  c++  java
  • Magento-设置产品显示的条数和默认条数

    在Block/Product/List/Toolbar.php里面,控制每页显示条数和默认条数的方法如下:

    1、每页显示条数:

    protected function _getAvailableLimit($mode) {
            if (isset($this->_availableLimit[$mode])) {
                return $this->_availableLimit[$mode];
            }
            $perPageConfigKey = 'catalog/frontend/' . $mode . '_per_page_values';
            $perPageValues = (string) Mage::getStoreConfig($perPageConfigKey);
            $perPageValues = explode(',', $perPageValues);
            $perPageValues = array_combine($perPageValues, $perPageValues);
            if (Mage::getStoreConfigFlag('catalog/frontend/list_allow_all')) {
                return ($perPageValues + array('all' => $this->__('All')));
            } else {
                return $perPageValues;
            }
        }

    Mage::getStoreConfig($perPageConfigKey)是获取系统配置的数据,可以到后台System->Configuration->Catalog->Frontend中查看。

    Products per Page on Grid Allowed Values代表Grid模式下显示的产品条数option, Products per Page on Grid Default Value代表Grid模式下默认显示的条数。

    当然上面介绍的方法不是唯一确定显示条数和默认显示条数的方法,可以在layout.xml中设置或者block中重写addPagerLimit方法和设置DefaultListPerPage(使用setDefaultListPerPage)

    <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
                            <block type="page/html_pager" name="product_list_toolbar_pager"/>
                            <!-- The following code shows how to set your own pager increments -->
    
                            <action method="setDefaultListPerPage"><limit>4</limit></action>
                            <action method="setDefaultGridPerPage"><limit>9</limit></action>
                            <action method="addPagerLimit"><mode>list</mode><limit>2</limit></action>
                            <action method="addPagerLimit"><mode>list</mode><limit>4</limit></action>
                            <action method="addPagerLimit"><mode>list</mode><limit>6</limit></action>
                            <action method="addPagerLimit"><mode>list</mode><limit>8</limit></action>
                  <action method="addPagerLimit"><mode>grid</mode><limit>12</limit></action>
                  <action method="addPagerLimit"><mode>grid</mode><limit>24</limit></action>
                  <action method="addPagerLimit"><mode>grid</mode><limit>36</limit></action> </block>

    设置每页显示默认条数是由下面的代码控制的

    <action method="setDefaultListPerPage"><limit>4</limit></action>
    <action method="setDefaultGridPerPage"><limit>24</limit></action>

    如上所示,List mode下默认显示的条数是4,而Grid mode下默认是24

    而设置每页显示的条数是:

    <action method="addPagerLimit"><mode>list</mode><limit>2</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>4</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>6</limit></action>
    <action method="addPagerLimit"><mode>list</mode><limit>8</limit></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>12</limit></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>24</limit></action>
    <action method="addPagerLimit"><mode>grid</mode><limit>36</limit></action>

    如上所示,List mode有4个选项,分别是2,4,6,8。而Grid mode有三个选项,分别是12,24,36。

    有一个要注意的是,当我们设置的默认显示条数不在设置的选项里面时,例如有12,24,36三个选项,而默认条数是28,那么系统会选取12作为默认条数。

      

  • 相关阅读:
    Writing an XMLRPC server or client in ASP.Net: Part 1
    a article test
    基于Android的一个简单多媒体播放器
    一涉及多个知识点的小测试程序
    Android蓝牙测试—发送一文件到另一蓝牙设备
    Android开发入门精品文章导引
    关于List对象的重复项清除和倒序处理
    关于Android的布局
    Android中对文本文件的读写处理
    Android系统中震动功能的测试
  • 原文地址:https://www.cnblogs.com/mityaya/p/4809864.html
Copyright © 2011-2022 走看看