分层导航,可配置的产品,多个过滤器活动的问题



假设我在Magento(1.7)商店中有一个单一的可配置产品,"T-Shirt-A",有红色(1号,2号)和黑色(2号)。

在分层导航栏中如果我选择黑色,size为1

  • 我不想看到任何结果-因为没有简单的产品有"黑色"one_answers"1号"。
  • 相反,我看到的是"t恤a",因为它有黑色和尺码1(但是,没有相关的简单产品同时满足这两个标准)

我能做些什么来实现我想要的搜索结果(让过滤器显示至少有一个相关的简单产品满足所有过滤条件的可配置产品)

用于分层导航的所有EAV下拉属性值都存储在catalog_product_index_eav表中,该表一次只知道一个产品。可配置产品的每个属性可能有多个值,这取决于它们的子属性,但是这些值的原始属性会丢失,这会导致您遇到的情况。

为了使它像你想要的那样工作,你必须重新设计EAV值为可配置产品和分层导航(Mage_CatalogIndex_Model_Indexer_Eav)索引的方式,以及它们被检索和用于过滤(Mage_Catalog_Model_Layer_Filter_Attribute)的方式

最新更新