Mam dziwny problem z wyprzedażą reguły Magento Target.
Scenariusz: Magento EE 1.12. Ponad 30 wyświetleń sklepu w tej samej instancji Magento. Ponad 30 000 produktów. Większość produktów ma takie same ustawienia we wszystkich widokach sklepu. Utworzyłem regułę pokazującą wyprzedaże w następujący sposób. „Pokaż produkty z tej samej kategorii w cenie 100% lub wyższej niż obecny produkt”. Ustawienia wyświetlania upsells: „Tylko na podstawie reguł” (problem powtarza się dla „na podstawie reguł i wybrane”). Zapisałem regułę. reindeksował wszystko. Wszystko wydaje się wyglądać OK, pojawiają się wyprzedaże (dla produktów, które testowałem) zgodnie z definicją reguły, ALE… Po pewnym czasie dla tego samego produktu w jednym sklepie pojawiają się wyprzedaże, a w innych sklepach nie. Produkt ma takie same ustawienia we wszystkich widokach sklepu. (i powinien mieć te same wyprzedaże).
Jeśli zmodyfikuję coś w regule i zapiszę ponownie, wyprzedaże zaczną pojawiać się we wszystkich widokach sklepu, ale po pewnym czasie problem się powtarza.
Po wczytaniu kodu dowiedziałem się, że wzrosty generowane przez regułę docelową są przechowywane w tabeli enterprise_targetrule_index_upsell, aby uniknąć analizowania wszystkich reguł za każdym razem. Oto jak to działa. (tabela jest obcinana podczas zapisywania reguły) Jeśli w tabeli, o której wspomniałem, są jakieś upsellery „reguły docelowej”, są one pobierane. Jeśli nie są, reguły są analizowane, a wynik jest umieszczany w tabeli indeksu. Oto niektóre rekordy z tej tabeli dla określonego produktu.
+-----------+----------+-------------------+---------------------------------------------------------------------+---------------------+
| 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 | 0 |
| 17372 | 18 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | 0 |
| 17372 | 19 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | 0 |
| 17372 | 20 | 0 | | 0 |
| 17372 | 21 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | 0 |
| 17372 | 22 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | 0 |
| 17372 | 23 | 0 | 17373,350,583,487,17664,29737,14719,443,445,29502,17666,17667,17668 | 0 |
Jak widać, wyprzedaże produktu o identyfikatorze 17372 są takie same we wszystkich widokach sklepu, z wyjątkiem store_id 20, który jest pusty. W sklepie 20. nie ma nic specjalnego. Wszystkie produkty tutaj dostępne są dostępne we wszystkich sklepach.
Dowolny pomysł?
Dzięki. Marius.
cron
skonfigurowany jest poprawnie? IIRC zasady są odbudowywane co noc i bez aktywnegocron
spowoduje dziwne zachowanie