グループ化された製品用のMagento層状ナビゲーションフィルター
-
30-10-2019 - |
質問
いくつかの言葉で - 問題はこの質問と同じです https://stackoverflow.com/questions/16718129/magento-layered-navigation-configurable-products-multiple-filters-active-iss
単純な製品をリンクした製品(Configutable / Groupd / Bundle)があります。そのリンクされた製品には独自の属性があり、構成可能には独自の属性があります。
レイヤードナビゲーションは、リンク製品のすべての利用可能なオプションを取得し、それらを親製品に追加するため、フィルターのさまざまな組み合わせを取得すると、既存のシンプルな製品のオプションを設定できます。
例:
SKU | Type | Country | City | Linked Skus
--------------------------------------------------------
SP1 | Simple | USA | NY | -
SP2 | Simple | USA | LA | -
SP3 | Simple | Russia | Moscow | -
SP4 | Simple | Russia | St. Pitersburg | -
GP1 | Grouped | - | - | SP1, SP2
GP2 | Grouped | - | - | SP1, SP3, SP4
そのようにして、フィルター= USAとCity = MoscowとMagentoをチェックインすることができます。
その理由は、インデックステーブルのものです catalog_product_index_eav それは次のようなものを持っているでしょう:
SKU | Attribute | Value
--------------------------------
GP1 | Country | USA
GP1 | City | NY
GP1 | City | LA
GP2 | Country | USA
GP2 | Country | Russia
GP2 | City | NY
GP2 | City | Moscow
GP2 | City | St. Pitersburg
したがって、この選択では、米国とモスクワの属性に値があるが、実際には米国 +モスクワを選択したものではないため、シンプルがリンクされているため、結果製品GP2が表示されます。間違い
これを解決する方法はありますか?
私に来るアイデアは1つだけです catalog_product_index_eav 追加の列linked_idおよび単純にゼロ値またはsimple entity_id値に配置されますが、グループ化 /構成可能などの場合は、リンクされたすべてのsimple + parent属性値に基づいてインデックスを生成します。
この例では、次のようになります。
SKU | Attribute | Linked Sku | Value
----------------------------------------
GP1 | Country | SP1 | USA
GP1 | Country | SP2 | USA
GP1 | City | SP1 | NY
GP1 | City | SP2 | LA
GP2 | Country | SP1 | USA
GP2 | Country | SP3 | Russia
GP2 | Country | SP4 | Russia
GP2 | City | SP1 | NY
GP2 | City | SP3 | Moscow
GP2 | City | SP4 | St. Pitersburg
したがって、ここでは、すべての属性が同じリンクされたSKUを持たなければならないという追加の条件を追加できます。
誰かがこれの準備が整った解決策を知っているのか、それとも追加のアイデアがあるかもしれませんか?多分これについて話し合いたいですか?
すべてのアイデア /解決策 /意見は大歓迎です:)
正しい解決策はありません