Polskie wsparcie PrestaShop

PrestaShop => PrestaShop 1.7 => Wątek zaczęty przez: Hedea w Lipiec 16, 2018, 10:58:22 am

Tytuł: Problem z wyświetlaniem cen specyficznych
Wiadomość wysłana przez: Hedea w Lipiec 16, 2018, 10:58:22 am
Witam,

Natrafiłem na bardzo dziwny przypadek i może ktoś się z nim już kiedyś zmagał i zna rozwiązanie problemu, bo ja powoli zaczynam rozkładać ręce :(

Dokładniej chodzi o to, że mimo ustawienia rabatu danemu produktowi w cenie specyficznej (zal1.jpg), na sklepie wyświetla on uparcie cenę bazową - niezależnie jak ustawimy cenę specyficzną w panelu.
Wiem na pewno, że nie jest to wina templatki - przełączałem widoki na różnych templatkach - także na bazowej presty i nadal był problem. Najgorsze, że problem pojawił się nagle, wszystko działało na wielu produktach i nagle dla nich wszystkich przestało wyświetlać ceny po rabacie. Dodam, że nie były instalowane żadne dodatki w tym czasie, które ewentualnie mogłyby spowodować posypanie się czegokolwiek.


Tytuł: Odp: Problem z wyświetlaniem cen specyficznych
Wiadomość wysłana przez: west w Lipiec 16, 2018, 09:39:13 pm
W takim razie może na serwerze była aktualizacja PHP ? czy log błędów cokolwiek pokazuje? Wyczyściłeś cache ?
Tytuł: Odp: Problem z wyświetlaniem cen specyficznych
Wiadomość wysłana przez: Hedea w Lipiec 17, 2018, 09:05:59 am
Właśnie w pierwszej kolejności też to sprawdziłem - wersja PHP na 100% bez zmian bo sam ją sobie ustawiam.
W logach żadnych błędów, cache czyszczony kilkukrotnie. :/
Tytuł: Odp: Problem z wyświetlaniem cen specyficznych
Wiadomość wysłana przez: Hedea w Lipiec 17, 2018, 02:54:30 pm
Okej, doszedłem do rozwiązania problemu sam - możliwe, że ktoś w przyszłości będzie miał z tym problem, więc daje rozwiązanie:

w folderze /classess/ odpalamy plik SpecificPrice.php

z niezrozumiałych względów jest tam zmiennej $threshold przypisana stała wartość 1000, która później jest wykorzystywana w warunku sprawdzającym ilość specyficznych cen, co ciekawe wykona on się tylko w momencie gdy ich ilość jest mniejsza niż ta zadana w zmiennej $threshold.
Wystarczy nadać jej większą wartość. Nie jest to całkowite rozwiązanie problemu rzecz jasna, ale obejście dzięki któremu wszystko wróci do normy :)