Jump to content
  • 0

Wyświetlenie ceny z na rozwijanej liście kombinacji/atrybutów na stronie produktów


hakeryk2

Question

Witam,

 

Może troszkę tytułem zamieszałem ale poszukuję informacji jak zrobić by gdy produkt posiada kombinacje do wyboru z listy rozwijalnej to na liście dodać informację o ile zwiększa lub zmniejsza się cena po wybraniu danego atrybutu. Wydaje mi się, że możnaby to zrobić poprzez jquery ponieważ po kliknięciu jquery zmienia cenę na stronie więc gdzieś takowa zmienna musi istnieć i wystarczyło by ją dodać poprzez .append() - próbowałem jednak poległem. Może ktoś bardziej ogarnięty by to spróbował zrobić?

 

Wizualizacja - żeby dodać do tych elementów.

post-1146962-0-50913000-1478262095_thumb.jpg

 

Czytałem ten temat -> https://www.prestashop.com/forums/topic/29219-variable-to-display-attribute-price/page-3 jednak żadne z tych rozwiązań nie działa w 1.6.1.4

 

Edycja: Udało mi się dostosować rozwiązania do 1.6.1.4 i odpowiedź na moje pytanie (niestety nie przez Javascript) jest w ostatnim poście w tamtym temacie.

Edited by hakeryk2 (see edit history)
Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

"I have another question: how to show value if the attribute has impact with percent?"

W standardzie nie ma w preście procentowego wzrostu/spadku ceny kombinacji atrybutów.

To chyba masz jakąś modyfikację i teraz poszukujesz modyfikacji do swojej modyfikacji :D

Link to comment
Share on other sites

  • 0

Eh, ostatnio robiłem aktualizację wpływu procentowego kombinacji na cenę poprzez CSV na ponad 1000 produktów i jakoś zostało mi w pamięci, że presta to posiada :) Mój błąd, ale ogólnie i tak można by takie coś wyciągnąć poprzez wzór wpływ kombinacji / cena * 100 i otrzymalibyśmy procent wpływu na cenę :) Potem to jakimś if'em dla określonych zapytań i poszło.

 

A coś z zadanego przeze mnie pytania - myślisz że byłaby możliwość otrzymania tego w czystym jquery/js? Bo nie ukrywam, że nie lubię override'ów.

Link to comment
Share on other sites

  • 0

ale co za roznica, czy override czy jQ/JS... i tak, zeby nie stracic zmian przy aktualizacji musisz pakowac to w override. 

 

a co do zmian w panelu, tak czy tak musialbys rozbudowac szablon atrybutow panelu, co nie obedzie sie bez ingerencji w override (czyli kontrolery admina). dalej, zeby cena czy to w kwocie czy w procentach pobierala sie w odpowiednie pola i przeliczala "on the fly" trzeba bedzie tez zastosowac odpowiedni skrypt. 

 

a co do rozwiazania jak sam to robilem swojego czasu, w kontrolerze atrybutow zrobilemsobie comboboxa, w ktorym wybieralo sie co ma przeliczyc, czy zl czy %, jezeli wybrana byla kwota to pozostawala oryginalna fukcja, jezlei procent to ta po stronie kontrolera sie przeliczala, a do bazy danych tak czy tak trafiala kwota, czyli tutaj za wiele kombinacji nie bylo. obylo sie tylko na zmianie jednego kontrolera admina

Link to comment
Share on other sites

  • 0

W product.js odbywa się tysiąc chachmęceń na cenach i chyba sam autor tego kodu już nie wie o co w nim chodzi, bo mimo że było już sto ;) wersji presty, ciągle są błędy z tym wyliczaniem cen.

Powinno to być po bożemu w php liczone, a js może co najwyżej za odświeżacz strony robić :D

 

A błąd występuje dla unity_price z kombinacjami plus specyficzna cena plus kursy walut.

  • Like 1
Link to comment
Share on other sites

  • 0

Dobra, męczyłem się z tym okropnie długo, już kilka razy przepisywałem kod z backendu i uważam, że da się to zrobić od strony php tylko wtedy jeśli istnieje 1 grupa kombinacji. To jest akurat banalne do zrobienia/napisania. Problem pojawia się wtedy gdy mamy 2 grupy, nie ważne czy to dropdown czy kolory - wtedy wszystko się pitoli.

Jedyną opcją faktycznie wydaje się być wtedy product.js i zawarte w zmiennej combinations (dostępnej np w konsoli) ponieważ tam dostępne są wszystkie kombinacje oraz dane jak je powiązać.. problem polega na tym, że jeśli istnieje wpływ na cenę np z pierwszej grupy to automatycznie zmienia się wpływ innej grupy i nie mam absolutnie bladego pojęcia jak to przypisać, jak się w ogóle za to zabrać.

Temat odkopany ale jeszcze nigdzie nie znalazłem rozwiązania tego problemu. Wszystkie oferują tylko dla tylko 1 grupy atrybutów.

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...