产品网格4列和某些页面5列有两排完整产品,如何?

时间:2011-03-24 23:35:46

标签: magento

我正在使用产品网格,某些页面需要4列,在某些页面上有两行8个产品,在其他页面上有5列两行10个产品。

我可以获得不同的列,但不会更改管理区域中设置的产品数量。对于我的5个列页面,我如何覆盖每页8个产品的默认值?

3 个答案:

答案 0 :(得分:9)

克里斯,

你的问题不是很清楚:) 您想更改每行的产品数量和/或每页产品的总数吗?

如果您想更改每行的产品数量,以下内容应该足够了

对于您希望每行显示10个产品的每个类别:

1-转到后端的类别并进行编辑。

2-转到“自定义设计”选项卡,然后在“自定义布局更新”字段中添加以下内容:

<reference name="product_list">
     <action method="setColumnCount"><columns>10</columns></action>
</reference>

如果您想更改每页的产品总数

在下文中,如果您在管理员中设置了每页的默认产品数量,并且仍希望将其显示在前端的寻呼机选择中,则必须将其添加到布局更新中。在以下示例中,默认产品计数为10,我们希望在给定类别上显示20个产品。 对于每页要显示20个产品的每个类别:

1-转到后端的类别并进行编辑。

2-转到“自定义设计”选项卡,然后在“自定义布局更新”字段中添加以下内容:

<reference name="product_list_toolbar">

     <!-- Your default products count : 10 -->
     <action method="addPagerLimit"><mode>grid</mode><limit>10</limit></action>

      <!-- Your new products count : 20. This is mandatory to be able to display 20 products -->
     <action method="addPagerLimit"><mode>grid</mode><limit>20</limit></action>

      <!-- The total number of products to display per page -->
     <action method="setDefaultGridPerPage"><limit>20</limit></action>

</reference>

现在,让我们混合

我们希望每页显示20个产品,10列(所以每行10个产品2行)

<reference name="product_list">
     <action method="setColumnCount"><columns>10</columns></action>
</reference>
<reference name="product_list_toolbar">
     <!-- Your default products count : 10 -->
     <action method="addPagerLimit"><mode>grid</mode><limit>10</limit></action>         
      <!-- Your new products count : 20 -->
     <action method="addPagerLimit"><mode>grid</mode><limit>20</limit></action>         
      <!-- The total number of products to display per page -->
     <action method="setDefaultGridPerPage"><limit>20</limit></action>
</reference>

请注意......

...你必须调整你的CSS /主题,以确保10列&lt; ul&gt;宽度足以包围10&lt; li>此布局更新将生成。

答案 1 :(得分:1)

应用\代码\核心\法师\目录\块\产品\ Abstract.php

第66行 改变

protected $_defaultColumnCount = 3;

protected $_defaultColumnCount = 4;

答案 2 :(得分:0)

克里斯,请你检查以下文件?有一个参数DEFAULT_PRODUCTS_COUNT

app/code/core/Mage/Catalog/Block/Product/New.php

class Mage_Catalog_Block_Product_New extends Mage_Catalog_Block_Product_Abstract
{
    protected $_productsCount = null;

    const DEFAULT_PRODUCTS_COUNT = 5;

    /**
     * Initialize block's cache
     */
    protected function _construct()
    {
        parent::_construct();

        $this->addColumnCountLayoutDepend('empty', 6)
            ->addColumnCountLayoutDepend('one_column', 5)
            ->addColumnCountLayoutDepend('two_columns_left', 4)
            ->addColumnCountLayoutDepend('two_columns_right', 4)
            ->addColumnCountLayoutDepend('three_columns', 3);

        $this->addData(array(
            'cache_lifetime'    => 86400,
            'cache_tags'        => array(Mage_Catalog_Model_Product::CACHE_TAG),
        ));
    }