ターゲットルールのアップセル
Magentoターゲットルールのアップセルに奇妙な問題があります。 シナリオ:Magento EE 1.12。同じMagentoインスタンスで30以上のストアビュー。30k以上の製品。ほとんどの製品は、すべてのストアビューで同じ設定になっています。アップセルを表示するためのルールを次のように作成しました。「現在の製品よりも価格が100%以上高い同じカテゴリの製品を表示する」。アップセルを表示するための設定:「ルールベースのみ」(問題は「ルールベースおよび選択済み」で再現)。ルールを保存しました。すべてのインデックスを再作成しました。すべての縫い目が問題なく見えるようになり、アップセルが(テストした製品の)ルールで定義されているように表示されます。製品は、すべてのストアビューで同じ設定を持っています。(そして、それは同じアップセルを持つべきです。) ルールの一部を変更して再度保存すると、アップセルがすべてのストアビューに表示され始めますが、しばらくすると問題が再現します。 コードを掘り下げた後、ターゲットルールによって生成されたアップセルがすべてのルールを毎回解析しないように、テーブルenterprise_targetrule_index_upsellに保持されていることがわかりました。これがどのように機能するかです。(ルールを保存すると、テーブルが切り捨てられます)前述のテーブルに「ターゲットルール」のアップセルがある場合、それらが取得されます。そうでない場合は、ルールが解析され、結果がインデックステーブルに格納されます。以下は、特定の製品のそのテーブルのレコードです。 +-----------+----------+-------------------+---------------------------------------------------------------------+---------------------+ | entity_id | store_id | customer_group_id | product_ids | customer_segment_id | +-----------+----------+-------------------+---------------------------------------------------------------------+---------------------+ | 17372 | 2 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | 0 | | 17372 | 5 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | 0 | | 17372 | 17 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | …