Моя проблема заключается в том, что расширенный поиск в magento не возвращает результатов (обычный поиск делает). Если я сброшу
$this->getLoadedProductCollection()
в моем шаблоне он возвращает «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>