sql - 在 magento catal 中按 2 个属性对产品进行排序

标签 sql magento e-commerce magento-1.4

在我的 magento 网站上,我们要求按 2 个属性对产品列表进行排序,“制造商”、“名称”,然后回退到唯一和默认属性“实体 ID”。

似乎 magento 只允许您按 1 和 entity_id 订购。如果需要,我不介意必须以一种骇人听闻的方式执行此操作。

环顾四周,有几个人有问题,但似乎没有人提供答案,所以我想我会在此之前给出这个问题(第一个问题也是如此,必须是一个强硬的人:))。

http://www.magentocommerce.com/boards/viewthread/7314/

http://www.magentocommerce.com/boards/viewthread/206869/

最佳答案

经过一些研究(我不是 php 开发人员 =/),以下似乎有效:

setOrder() 方法接受一个数组。

$Collection->setOrder(array('attribute1', 'attribute2'), asc);

我不确定有人会如何使用它,但我在 Catalogue/Product/List/目录中的 Toolbar.php 中修改了这一行。

 if ($this->getCurrentOrder()) {
      $this->_collection->setOrder(array($this->getCurrentOrder(), 'name'), $this->getCurrentDirection());
 }

所以我所有的收藏都按当前顺序(默认顺序)排序,然后硬编码到按名称排序。仍在对其进行一些测试,但似乎有效......

关于sql - 在 magento catal 中按 2 个属性对产品进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4900734/

相关文章:

python - Django ·奥斯卡。如何添加产品?

python - 按具有相同值和计数的字段对 mysql 查询进行分组

sql - SSIS使用列位置而不是名称导入Excel文档

sql - T-SQL员工层次结构递归查询

laravel - OctoberCMS 或纯 Laravel

seo - 面包屑应该遵循 URL 结构吗?

mysql - 如何防止任何人删除、删除和更改 mysql 中日志表的内容

php - 在 Magento 中获取订单增量 ID

magento - 大小写问题

Magento:数以千计的相似产品,改变价格的两个属性