magento2 - 从 Magento 2.2.4 迁移到 Magento 2.4.0 后产品未显示在类别页面上
问题描述
我已将Magento 2.2.4更新为Magento 2.4.0。之后产品不会显示在类别页面上。请注意,当我搜索产品时,产品详情页面正在打开。
请看截图:
我尝试过索引,创建库存视图,尝试创建新产品和类别,库存也很好,产品也分配到网站。弹性搜索也根据需要进行配置。
我还尝试打印以打印ListProduct.php上的集合查询
我明白了
"SELECT `e`.*, `price_index`.`price`, `price_index`.`tax_class_id`, `price_index`.`final_price`, IF(price_index.tier_price IS NOT NULL, LEAST(price_index.min_price, price_index.tier_price), price_index.min_price) AS `minimal_price`, `price_index`.`min_price`, `price_index`.`max_price`, `price_index`.`tier_price`, IFNULL(review_summary.reviews_count, 0) AS `reviews_count`, IFNULL(review_summary.rating_summary, 0) AS `rating_summary`, `stock_status_index`.`stock_status` AS `is_salable` FROM `catalog_product_entity` AS `e` INNER JOIN `catalog_product_index_price` AS `price_index` ON price_index.entity_id = e.entity_id AND price_index.customer_group_id = 0 AND price_index.website_id = '1' LEFT JOIN `review_entity_summary` AS `review_summary` ON e.entity_id = review_summary.entity_pk_value AND review_summary.store_id = 1 AND review_summary.entity_type = (SELECT `review_entity`.`entity_id` FROM `review_entity` WHERE (entity_code = 'product')) INNER JOIN `cataloginventory_stock_status` AS `stock_status_index` ON e.entity_id = stock_status_index.product_id WHERE (NULL)"
解决方案
我遇到了您描述的相同问题,尝试了您概述的相同步骤,追踪了相同的集合查询。最终原因是第三方扩展添加的产品属性,该属性配置不正确。
尝试这里解释的解决方案 — https://magento.stackexchange.com/a/322623/36384
推荐阅读
- python - 如何使用参数调用在python中存储为变量的函数?-- 类型错误被抛出
- java - 直到鼠标悬停在java中按钮才显示
- html - 具有粘性标题重叠问题的表
- python - 使用数字列表在 pd.DF 中缩放数字的函数
- vue.js - 如何在 vuetify 的 Window 组件中实现 touch prop?
- python - Python:有没有办法在列表中指定的数据框的所有列上分别应用函数?Pyfinance 软件包
- javascript - 正确定位 Modal 而不重构代码 React
- excel - MAX 和 COUNTIFS
- spring-boot - 如何应对 Spring Boot 2.2.0 中的 x-forwarded-headers?(反向代理背后的Spring Web MVC)
- neural-network - Cupy 错误:cudaErrorIllegalAddress - 遇到非法内存访问