Magento 高级搜索 - 结果顺序不一致/如何定义多个排序字段
Magento advanced search - inconsistent order of results / how to define multiple order-by fields
我发现搜索结果在 Magento 1.9.0.1 中的显示顺序不一致。
在下面的 this 示例中,我已指定结果应按价格排序,这行得通,但每次执行搜索时,相同价格的产品都以不同的顺序出现。
有谁知道如何解决这个问题?
两个可能的解决方案(我不知道如何实施)是:
- 为所有高级搜索添加默认的基本排序方式(在产品上
例如 ID 或 SKU)
- 找到一种指定多个排序依据的方法
字段,就像您在直接 SQL 语句中一样,“...ORDER BY
xxx 升序,yyy 降序..."
我相信我已经通过将一些额外的 XML 应用到 /app/design/frontend//thk/default/layout/catalogsearch.xml 来解决这个问题,请参阅下面的 "search_result_list" 元素。这似乎有效地实现了上面的(1)。
<catalogsearch_advanced_result translate="label">
...
<reference name="search_result_list">
<action method="setDefaultDirection"><param>ASC</param></action>
<action method="setSortBy"><param>name</param></action>
</reference>
...
</catalogsearch_advanced_result>
我发现搜索结果在 Magento 1.9.0.1 中的显示顺序不一致。
在下面的 this 示例中,我已指定结果应按价格排序,这行得通,但每次执行搜索时,相同价格的产品都以不同的顺序出现。
有谁知道如何解决这个问题?
两个可能的解决方案(我不知道如何实施)是:
- 为所有高级搜索添加默认的基本排序方式(在产品上 例如 ID 或 SKU)
- 找到一种指定多个排序依据的方法 字段,就像您在直接 SQL 语句中一样,“...ORDER BY xxx 升序,yyy 降序..."
我相信我已经通过将一些额外的 XML 应用到 /app/design/frontend//thk/default/layout/catalogsearch.xml 来解决这个问题,请参阅下面的 "search_result_list" 元素。这似乎有效地实现了上面的(1)。
<catalogsearch_advanced_result translate="label">
...
<reference name="search_result_list">
<action method="setDefaultDirection"><param>ASC</param></action>
<action method="setSortBy"><param>name</param></action>
</reference>
...
</catalogsearch_advanced_result>