2010-09-21 121 views
0

我不知道我的标题是否可以,但我想要做的事情就像画廊或至少我的客户这样称呼它......大声笑.....我'尝试做类似搜索结果页面但没有搜索条件的东西,没有过滤器,只需点击链接并查看产品列表,使用相同的功能,更改视图模式(表格,列表),选择数量产品展示和寻呼机,我在这里需要一些帮助,我做了什么至今,我创建了一个新的控制器,在我的XML布局只是一个行动Magento产品画廊

public function listAction(){ 
    $this->loadLayout(); 
    $this->renderLayout(); 
} 

简单

<catalog_products_list> 
    <reference name="root"> 
     <action method="setTemplate"><template>page/1columns.phtml</template></action> 
    </reference> 
    <reference name="left"> 
     <block type="catalogsearch/layer" name="catalogsearch.leftnav" before="-" template="catalog/layer/view.phtml"/> 
    </reference> 
    <reference name="content"> 
      <block type="catalog/product_uhmalist" name="search_result_list" template="catalog/product/list.phtml"> 
       <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> 
       <block type="core/text_list" name="additional"> 
        <block type='enterprise_search/suggestions' name='search_suggestions' template="search/suggestions.phtml"></block> 
        <block type='enterprise_search/recommendations' name='search_recommendations' template="search/recommendations.phtml"></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> 
       <action method="setPageLayout"><layout>three_columns</layout></action> 
      </block> 
      <action method="setListOrders"/> 
      <action method="setListModes"/> 
      <action method="setListCollection"/> 
    </reference> 
</catalog_products_list> 

它与catalogsearch.xml中的catalogsearch_result_index块几乎相同,当我试图去我的新页面时,它显示我没有产品,集合是空的,所以,我更改了app \ code中的funcion _getProductCollection()的内容\核心\法师\目录\块\产品\ list.php的这个

if (is_null($this->_productCollection)) { 
     $category = Mage::getModel('catalog/category')->load(5); 
     $productCollection = $category->getProductCollection(); 
     Mage::getModel('catalog/layer')->prepareProductCollection($productCollection); 
     $this->_productCollection = $productCollection->load(); 
    } 
    return $this->_productCollection; 

我不喜欢改变的核心代码,但现在我试图让它工作,所以,当我刷新它显示我的产品,我可以改变视图模式,我可以看到产品的数量,但是,传呼机不起作用,当我改变产品的数量时,我无法显示,它什么也不做,只是改变标签8项目8的项目1-8,并不分组,如果我选择5,它应该只显示5项,但我可以看到8我有我的分贝,所以,

我的代码有什么问题?我怎样才能让传呼机工作?
谢谢

回答

0

我要回答自己。

我在XML布局中做了一些错误的步骤。我改变

<reference name="left"> 
    <block type="catalogsearch/layer" name="catalogsearch.leftnav" before="-" template="catalog/layer/view.phtml"/> 
</reference> 

<reference name="left"> 
    <block type="catalog/layer" name="catalogsearch.leftnav" before="-" template="catalog/layer/view.phtml"/> 
</reference> 

,我改变了这一行的默认值

<block type="catalog/product_uhmalist" name="search_result_list" template="catalog/product/list.phtml"> 

<block type="catalog/product_list" name="search_result_list" template="catalog/product/list.phtml"> 

现在一切工作,甚至寻呼机。无论如何,感谢大家谁阅读我的帖子