Я считаю, что недостающими «ключами» являются следующие два элемента:
<action method="setDefaultDirection"><string>desc</string></action>
<action method="setDefaultOrder"><string>relevance</string></action>
Вы должны быть в состоянии выполнить это несколькими различными способами... в любом случае вам нужно будет сделать локальные копии указанных файлов.
1) Если у вас его еще нет, добавьте локальную копию 'catalogsearch.xml'
Примечание. Поскольку макеты Magento работают «каскадно», рекомендуется сначала проверить любые «другие» доступные каталоги макетов Magento (кроме «базового»). Например, в моем случае мы используем EE, поэтому мы сначала проверяем каталог макета «предприятие», чтобы скопировать файлы, прежде чем искать в каталоге «база».
Распространенные местоположения «catalogsearch.xml»:
/app/design/frontend/base/default/layout/catalogsearch.xml (в крайнем случае) /app/design/frontend/enterprise/default/layout/catalogsearch.xml (для EE) Примечание. Может быть другое расположение с PE тоже... Я не на 100%.
2) Добавьте следующее в раздел «catalogsearch_result_index» в «catalogsearch.xml»:
<action method="setDefaultDirection"><string>desc</string></action>
<action method="setDefaultOrder"><string>relevance</string></action>
Например:
Ссылка на дескриптор search_result_list (т. е. макет предприятия):
<reference name="search_result_list">
<action method="setDefaultDirection"><string>desc</string></action>
<action method="setDefaultOrder"><string>relevance</string></action>
</reference>
Таким образом, это будет выглядеть примерно так:
<catalogsearch_result_index>
...other code
<reference name="search_result_list">
<action method="setDefaultDirection"><string>desc</string></action>
<action method="setDefaultOrder"><string>relevance</string></action>
</reference>
...other code
</catalogsearch_result_index>
Или вы можете поместить непосредственно в блок search_result_list (т.е. базовый макет):
<catalogsearch_result_index translate="label">
<label>Quick Search Form</label>
<reference name="root">
<action method="setTemplate"><template>page/3columns.phtml</template></action>
</reference>
<reference name="left">
<block type="catalogsearch/layer" name="catalogsearch.leftnav" after="currency" template="catalog/layer/view.phtml"/>
</reference>
<reference name="content">
<block type="catalogsearch/result" name="search.result" template="catalogsearch/result.phtml">
<block type="catalog/product_list" name="search_result_list" template="catalog/product/list.phtml">
<action method="setDefaultDirection"><string>desc</string></action>
<action method="setDefaultOrder"><string>relevance</string></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>
<action method="setListOrders"/>
<action method="setListModes"/>
<action method="setListCollection"/>
</block>
</reference>
</catalogsearch_result_index>
3) Обязательно сбросьте кеш/хранилище Magento и переиндексируйте.
Другим вариантом было бы разместить их как «скрытые» элементы формы в «form.mini.phtml».
1) Поместите в форму в form.mini.phtml следующее:
<input type="hidden" name="order" value="relevance">
<input type="hidden" name="dir" value="desc">
Теперь начало формы в form.mini.phtml будет выглядеть примерно так:
<form id="search_mini_form" action="<?php echo $this->helper('catalogsearch')->getResultUrl() ?>" method="get">
<input type="hidden" name="order" value="relevance">
<input type="hidden" name="dir" value="desc">
...other code
2) Измените путь к шаблону «form.mini.phtml» в разделе «по умолчанию» (ссылочный дескриптор «header») в «catalogsearch.xml»:
<default>
<reference name="header">
<block type="core/template" name="top.search" as="topSearch" template="custom_template/catalogsearch/form.mini.phtml"/>
</reference>
... other code
3) Обязательно сбросьте кеш/хранилище Magento и переиндексируйте.
Последнее примечание... Ниже приведена структура пути "настраиваемого шаблона", которую мы настроили. Находится в каталоге «enterprise», поэтому мои пользовательские файлы будут расположены: /app/design/frontend/enterprise/custom_template/layout/catalogsearch.xml /app/design/frontend/enterprise/custom_template/template/catalogsearch/form.mini .phtml
Надеюсь, это имеет смысл и помогает.
person
JamesD
schedule
22.01.2013