Xml Magento-仅为一个类别设置自定义排序依据和顺序方向,并进行布局更新

Xml Magento-仅为一个类别设置自定义排序依据和顺序方向,并进行布局更新,xml,magento,sorting,categories,magento-1.9,Xml,Magento,Sorting,Categories,Magento 1.9,我试图做的事情似乎很简单……但出于某种原因,我还没有弄明白这一点 我想做的只是通过Magento后端为一个特定类别更改sort by属性和排序顺序方向。也就是说,我认为最好的办法是使用自定义布局更新XML。在互联网上广泛搜索之后,我似乎无法找到答案(我希望这个问题的答案也能帮助其他人) 非常简单,我已针对一个特定类别尝试了以下自定义布局更新XML: <reference name="product_list_toolbar"> <action method="setDe

我试图做的事情似乎很简单……但出于某种原因,我还没有弄明白这一点

我想做的只是通过Magento后端为一个特定类别更改sort by属性和排序顺序方向。也就是说,我认为最好的办法是使用自定义布局更新XML。在互联网上广泛搜索之后,我似乎无法找到答案(我希望这个问题的答案也能帮助其他人)

非常简单,我已针对一个特定类别尝试了以下自定义布局更新XML:

<reference name="product_list_toolbar">
    <action method="setDefaultOrder"><string>created_at</string></action>
    <action method="setDefaultDirection"><string>desc</string></action>
</reference>

创建于
描述
但它就是不起作用!(它在自定义主题和默认RWD主题中都不起任何作用。)

我想做的事不可能吗?看起来很容易

提前谢谢


注意:我使用的是Magento版本1.9.1.1,由于某些原因,自定义布局方法在Magento 1.9及更高版本中不起作用。这可能是因为Magento在
local.xml
中用
标记覆盖了它。我找到的唯一解决方案是打开themes local.xml,然后插入以下内容

<CATEGORY_24>
     <reference name="product_list_toolbar">
        <action method="setDefaultDirection"><string>desc</string></action>
    </reference>
</CATEGORY_24>

描述

其中,
被类别ID替换。

由于某种原因,自定义布局方法在Magento 1.9及更高版本中不起作用。这可能是因为Magento在
local.xml
中用
标记覆盖了它。我找到的唯一解决方案是打开themes local.xml,然后插入以下内容

<CATEGORY_24>
     <reference name="product_list_toolbar">
        <action method="setDefaultDirection"><string>desc</string></action>
    </reference>
</CATEGORY_24>

描述

其中,
被类别ID替换。

经过多次尝试和错误后发现了这一点

为了更改排序顺序,我使用了Ricky的代码,并使用Magento后端将其添加为该类别的布局更新XML:
(类别>自定义设计>自定义布局更新)


经过多次尝试和错误后发现了这一点

为了更改排序顺序,我使用了Ricky的代码,并使用Magento后端将其添加为该类别的布局更新XML:
(类别>自定义设计>自定义布局更新)

这对我很有用:

<reference name="product_list">
    <action method="setDefaultDirection"><string>desc</string></action>
    <action method="setSortBy"><string>sku</string></action>
</reference>
<reference name="product_list_toolbar">
    <action method="setDefaultDirection"><string>desc</string></action>
    <action method="setSortBy"><string>sku</string></action>
    <action method="setDefaultGridPerPage"><limit>260</limit></action>
    <action method="setDefaultListPerPage"><limit>260</limit></action>
</reference>

描述
sku
描述
sku
260
260
这对我很有用:

<reference name="product_list">
    <action method="setDefaultDirection"><string>desc</string></action>
    <action method="setSortBy"><string>sku</string></action>
</reference>
<reference name="product_list_toolbar">
    <action method="setDefaultDirection"><string>desc</string></action>
    <action method="setSortBy"><string>sku</string></action>
    <action method="setDefaultGridPerPage"><limit>260</limit></action>
    <action method="setDefaultListPerPage"><limit>260</limit></action>
</reference>

描述
sku
描述
sku
260
260

试试参考名称
产品列表
没有这样的运气。引用
产品列表\工具栏
产品列表
不会更改排序顺序属性或方向。但是,我注意到,下面的布局更新XML更改了排序顺序方向,但没有更改排序顺序属性:
desc
Try reference name
product\u list
没有这样的运气。引用
产品列表\工具栏
产品列表
不会更改排序顺序属性或方向。但是,我注意到以下布局更新XML更改了排序顺序方向,但没有更改排序顺序属性:
desc
这太棒了!我在类别的布局更新XML的后端使用了代码的第2-4行,成功地切换了排序顺序方向,但我使用了不同的方法添加了不同的排序依据属性。这太棒了!我在类别的布局更新XML的后端使用了代码的第2-4行,成功地切换了排序顺序方向,但我使用了不同的方法添加了不同的排序依据属性。您能解释一下为什么它对您有效,以及为什么是问题的解决方案吗?只有代码的答案在SOC中不被接受。你能解释为什么它对你有效,为什么它是问题的解决方案吗?SO不接受仅为代码的答案