Magento高级搜索不返回任何结果


Magento advanced search returns no results

我的问题是,在magento中的高级搜索没有返回结果(普通搜索会返回结果)。如果我转储

$this->getLoadedProductCollection()

在我的Template中,它返回"null"。因此,我在"app/code/local/Mage/CatalogSearch/Block/advanced/Result.php"中查看了将集合设置为高级搜索模板/视图的类,发现了以下方法:

public function setListCollection() {
    $this->getChild('search_result_list')->setCollection($this->_getProductCollection());
}

如果我转储

$this->_getProductCollection();

我得到了与我的搜索查询匹配的所有产品。但是为什么返回我的第一个方法null?我不知道。

谢谢你的帮助。

如果有产品,可能您没有显示块search_result_list
检查布局文件catalogsearch.xml,并查看句柄<catalogsearch_advanced_result>的外观。它内部应该有一个名为search_result_list的块。将其与默认主题中的内容进行比较。为了让它更容易,这里显示它应该看起来像:

<catalogsearch_advanced_result translate="label">
    <label>Advanced Search Result</label>
    <update handle="page_two_columns_right" />
    <!-- Mage_Catalogsearch -->
    <reference name="root">
        <action method="setTemplate"><template>page/2columns-right.phtml</template></action>
    </reference>
    <reference name="content">
        <block type="catalogsearch/advanced_result" name="catalogsearch_advanced_result" template="catalogsearch/advanced/result.phtml">
            <block type="catalog/product_list" 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>
                <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>
            <action method="setListOrders"/>
            <action method="setListModes"/>
            <action method="setListCollection"/>
        </block>
    </reference>
</catalogsearch_advanced_result>