0

我在toolbar.phtml中玩过这个块:

<div class="sort-by">
        <label><?php echo $this->__('Sort By') ?></label>
        <select onchange="setLocation(this.value)">
        <?php foreach($this->getAvailableOrders() as $_key=>$_order): ?>
            <option value="<?php echo $this->getOrderUrl($_key, 'desc') ?>"<?php if($this->isOrderCurrent($_key)): ?> selected="selected"<?php endif; ?>>
                <?php echo $this->__($_order) ?>
            </option>
        <?php endforeach; ?>
        </select>
            **<?php if($this->getCurrentDirection() == 'desc'): ?>**
            <a class="category-desc v-middle" href="<?php echo $this->getOrderUrl(null, 'asc') ?>" title="<?php echo $this->__('Set Ascending Direction') ?>"><?php echo $this->__('Set Ascending Direction') ?></a>
        <?php else: ?>
            <a class="category-asc v-middle" href="<?php echo $this->getOrderUrl(null, 'desc') ?>" title="<?php echo $this->__('Set Descending Direction') ?>"><?php echo $this->__('Set Descending Direction') ?></a>
        <?php endif; ?>
    </div>

我将 asc 更改为 desc,但它似乎不起作用。

4

2 回答 2

2

Magento 目前不允许您从后端配置中定义排序顺序。但是,它们允许您选择可以排序的内容。要更改默认排序顺序,您必须执行以下操作:

  1. 复制app/code/core/Mage/Catalog/Block/Product/List/Toolbar.phpapp/code/local/Mage/Catalog/Block/Product/List/Toolbar.php

  2. 打开app/code/local/Mage/Catalog/Product/Block/List/Toolbar.php

  3. 寻找protected $_direction = 'asc';

  4. 改成protected $_direction = 'desc';

  5. 保存文件,清除缓存。

要将默认排序依据更改为价格,请执行以下操作:

  1. 在 Magento Admin 中,转到System > Configuration > Catalog

  2. 将产品列表排序方式更改为价格

  3. 点击保存配置

于 2012-11-28T18:11:15.337 回答
0

在 catalog.xml 添加值:

<action method="setDefaultDirection"><dir>desc</dir></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"/>
      <!-- The following code shows how to set your own pager increments -->
     <!-- .... -->
     <action method="setDefaultDirection"><dir>desc</dir></action>
     </block>
于 2013-11-18T10:27:33.743 回答