atomek Posted July 1 Share Posted July 1 Witam, Tłumaczę o co chodzi. Na stronie produktu jest zakładka "Szczegóły produktu", wyświetlają się tam m.in. cechy produktu, logo producenta, indeks, itp. Mam też zainstalowane moduły typu "Produkty w tej samej kategorii" i "Sprzedaż łączona". Wybieram szybki podgląd jednego z produktów z w/w modułów. Po zmianie ilości lub atrybut w oknie szybkiego podglądu otrzymuję taki efekt: Zawartość zakładki "Szczegóły produktu" została zmieniona, zastąpiona danymi z produktu z szybkiego podglądu. Szablon to standardowy classic, presta bez żadnych modyfikacji. Zrzuty ekranu pochodzą z PS 1.7.8.7, w PS 8.1.6 jest to samo (w innych wersjach pewnie też). Mam wrażenie, że nie jest to bezpośrednio zależne od templatki. Przeglądałem kilka innych, również komercyjnych szablonów i w każdym z nich był podobny efekt. Ma ktoś z Was pomysł jak naprawić tego babola? Pozdrawiam Link to comment Share on other sites More sharing options...
endriu107 Posted July 1 Share Posted July 1 Testowałem problem na kilku szablonach podobnie jak ty i faktycznie problem występuje ale efekty na niektórych szablonach są różne. Niektóre zawieszają widok części strony produktu ale w znacznej większości efekt jest taki jak sam opisałeś. Nie zagłębiałem się bardziej ale na pierwszy rzut oka problem jest jednak w tym że kod js szablonu dla akcji updateProduct odpala się dla id="product-details" globalnie a nie w samym okienku. Idealnie by było jakby id="product-details" miało na końcu id produktu i po tym by aktualizowało. 1 Link to comment Share on other sites More sharing options...
atomek Posted July 2 Author Share Posted July 2 Dzięki @endriu107 za wskazówkę, problem rozwiązałem, zrobiłem zmiany w core.js. Moje rozwiązanie problemu, może komuś się przyda. W pliku /themes/_core/js/product.js (wersja developerska PS 8.1.6) w funkcji updateProduct około 250 wiersza było: $(prestashop.selectors.product.details).replaceWith( data.product_details, ); zamieniłem na: const isQuickView = $('.modal.quickview.in').length; if (!isQuickView) { $(prestashop.selectors.product.details).replaceWith( data.product_details, ); } Po zmianach należy przebudować core.js za pomocą webpacka. 1 Link to comment Share on other sites More sharing options...
endriu107 Posted July 2 Share Posted July 2 Super, generalnie można by to było zgłosić na githubie żeby w przyszłości nie poprawiać. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now