2012-10-24 165 views
4

如何限制新产品区块中展示的产品数量?通过CMS /页/设计/布局更新XML Magento限制新产品区块中展示的产品数量

<block type="catalog/product_new" name="home.catalog.product.new" template="catalog/product/new.phtml" > 
    <action method="setColumnCount"><count>5</count></action> 
    <action method="setLimit"><limit>5</limit></action> 
</block> 

setLimit不工作,也不

<action method="setDefaultGridPerPage"><limit>5</limit></action> 

或:

<action method="setData"><key>limit</key><value>3</value></action> 

或:

<action method="setProductLimit"><count>5</count></action> 

或者:

<action method="setProductsLimit"><count>5</count></action> 

或:

<action method="setProductsCount"><count>5</count></action> 

回答

5

尝试

<action method="setProductsCount"><count>5</count></action> 

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

/** 
* Set how much product should be displayed at once. 
* 
* @param $count 
* @return Mage_Catalog_Block_Product_New 
*/ 
public function setProductsCount($count) 
{ 
    $this->_productsCount = $count; 
    return $this; 
} 

阅读更多@http://www.magentocommerce.com/wiki/groups/248/display_products_on_home_page

+0

你是对的!我在一个全新的magento安装上测试了它,它工作正常。我发现有一个覆盖模块,它使用了保留的namesapace。这就是为什么它不适合我。 –

0

不要随意尝试。您正尝试致电block/product_new的操作。所以进入类Mage_Catalog_Block_Product_Abstract,看看有什么功能可以做这个工作(在Eclipse中双击Ctrl + O)

在这里我看到一个Mage_Catalog_Block_Product_Abstract::addColumnCountLayoutDepend($pageLayout, $columnCount)函数。

也许它可以帮助你。例如:

$this->addColumnCountLayoutDepend('one_column', 5)