如何解决Magento 2 - 可配置产品的 min_price 和 max_price 为 0 且无法更改?
最近,我通过 CSV 将大约 40.000 个产品导入到 Magento 2 暂存环境(社区 2.4.1)。其中许多产品是可配置的产品(例如桌子),并附有子产品(红色桌子、绿色桌子……)。
导入后,我注意到我的价格排序和过滤工作不正常。我发现对于所有可配置的产品,catalog_product_index_price 表的 min_price 和 max_price 列都是“0”。与手动创建可配置产品不同,Magento 显然不会在 CSV 导入期间填充这些列。不确定是错误还是我的错误。
我需要为所有可配置的产品修正 min_price 和 max_price 以便过滤器和排序工作。我试过直接在 catalog_product_index_price 中更新列,但没有结果(重新索引后只改回 0)。我仍在深入研究 Magento 的数据库结构,但似乎找不到任何其他存储 min_price 和 max_price 的地方。
我错过了什么吗?
解决方法
我终于找到了。
即使我的商店没有库存,我也不得不:
- 将所有产品的数量设置为 > 0。
- 将所有产品设置为“is_on_stock”。
显然 M2 中存在一个错误(至少,我认为这是一个错误),导致索引器将可配置产品的 min_price 和 max_price 设置为零以防万一它的 Simple Products 没有 Qty 或 is_on_stock 集。
也许这背后是有原因的,但对我来说,这完全没有意义。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。