我通过Magento Admin界面创建了一个CMS页面,我将以下代码放在那里:
{{block type="catalog/product_list" name="home.catalog.product.list" alias="products_homepage" category_id="3" template="catalog/product/list.phtml"}}
这显示了ID为3的类别的产品。
我的magento配置为每页显示9个产品。在相关类别中,有30种产品。
在我的类别页面上,我可以看到一个分页器,这在CMS页面上不会发生。我做错了什么?
答案 0 :(得分:12)
我在主页上的默认产品列表中遇到了同样没有分页链接的问题。
事实证明,根据我在许多网站上看到的建议,在主页上获取产品(为什么这应该是电子商务应用程序上的复杂任务超出我...)不是最好的方法去。
为了解决这个问题,我删除了代码
{{block type="catalog/product_list" name="home.catalog.product.list" alias="products_homepage" category_id="3" template="catalog/product/list.phtml"}}
来自页面内容,只需输入<div></div>
(这样就可以保存页面了。)
然后,我使用定义分页器块的catalog.xml文件中的XML替换“设计”选项卡下的XML。像这样:
<reference name="content">
<block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
<action method="setCategoryId"><category_id>3</category_id></action>
<action method="setColumnCount"><columns>3</columns></action>
<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"/>
</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>
</reference>
这给了我需要的分页链接。希望它可以帮到你。
答案 1 :(得分:2)
<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" />
这需要添加到您尝试加载产品的xml块中,以便它获取工具栏和寻呼机。
请参阅此链接作为参考: Products with Pagination