Php 如何更改OpenCart中的默认产品排序顺序

Php 如何更改OpenCart中的默认产品排序顺序,php,sorting,opencart,Php,Sorting,Opencart,我想将opencart商店中的默认排序顺序更改为按价格递增,但我不知道如何更改。 感谢您的帮助 嗯。假设要更改类别页面的排序顺序,则必须编辑以下文件: catalog/controller/product/category.php 然后对我的文件下几行,这是第21行,对你来说,可能不同,可能是你的文件的第二个条件,在方法索引中,找到以下代码: if (isset($this->request->get['sort'])) { $sort = $this-&g

我想将opencart商店中的默认排序顺序更改为按价格递增,但我不知道如何更改。
感谢您的帮助

嗯。假设要更改类别页面的排序顺序,则必须编辑以下文件:

catalog/controller/product/category.php
然后对我的文件下几行,这是第21行,对你来说,可能不同,可能是你的文件的第二个条件,在方法索引中,找到以下代码:

if (isset($this->request->get['sort'])) {
            $sort = $this->request->get['sort'];
        } else {
            $sort = 'p.sort_order';
        }
并将其替换为:

if (isset($this->request->get['sort'])) {
            $sort = $this->request->get['sort'];
        } else {
            $sort = 'p.price';
        }

请注意,通过上述更改,您仍然可以从页面本身更改排序顺序,它只会更改默认排序顺序。

很好。假设要更改类别页面的排序顺序,则必须编辑以下文件:

catalog/controller/product/category.php
然后对我的文件下几行,这是第21行,对你来说,可能不同,可能是你的文件的第二个条件,在方法索引中,找到以下代码:

if (isset($this->request->get['sort'])) {
            $sort = $this->request->get['sort'];
        } else {
            $sort = 'p.sort_order';
        }
并将其替换为:

if (isset($this->request->get['sort'])) {
            $sort = $this->request->get['sort'];
        } else {
            $sort = 'p.price';
        }

请注意,通过上述更改,您仍然可以从页面本身更改排序顺序,只需更改默认排序顺序。

如果您使用的是1.5.x版到1.5.6版,请确保您必须在 catalog/model/catalog/product.php 然后搜索 }else{$sql.=orderbyp.sort_ORDER;} 可能在195/196号线上 并替换为 }else{$sql.=按p.price订购;} 确保您已经更改了上述代码 我希望这会奏效
谢谢

如果您使用的是1.5.x版到1.5.6版,请确保您必须在 catalog/model/catalog/product.php 然后搜索 }else{$sql.=orderbyp.sort_ORDER;} 可能在195/196号线上 并替换为 }else{$sql.=按p.price订购;} 确保您已经更改了上述代码 我希望这会奏效
谢谢你这是什么意思?先看的价格越便宜,最后看的价格越贵?您想更改哪一页?类别?没错。我希望它首先是最便宜的,最后是最贵的。在分类页面上。在左边有一个排序选项,我希望默认的是按价格增加排序。这是什么意思?先看的价格越便宜,最后看的价格越贵?您想更改哪一页?类别?没错。我希望它首先是最便宜的,最后是最贵的。在分类页面上。在左边有一个排序选项,我希望默认的是按涨价排序。我替换了它,现在sql结束了:现在按ps排序。价格ASC限制1作为特殊;但它似乎没有做什么。幸运的是,没有。我也清除了我的缓存,但它仍然按优先级排序。我已经更新了答案,它已经测试过了。撤消以前的更改,然后应用上述更改。如果它能工作,别忘了接受它作为答案。在2.x版中不工作,对于2.x版,我必须在文件系统/存储/修改/目录/控制器/产品/类别.phpH中进行更改。我替换了它,现在sql结束了:现在按ps.price ASC LIMIT 1作为特殊订单;但它似乎没有做什么。幸运的是,没有。我也清除了我的缓存,但它仍然按优先级排序。我已经更新了答案,它已经测试过了。撤消以前的更改,然后应用上述更改。如果它能工作,别忘了接受它作为答案。在2.x版中不工作,对于2.x版,我必须在文件系统/storage/modification/catalog/controller/product/category.php中进行更改