Przełączanie waluty w zależności od wersji językowej w PrestaShop.

Standardowo PrestaShop wyświetla domyślną walutę zaraz po wejściu na sklep. Przy zmianie wersji językowej waluta pozostaje bez zmian. Poniżej screeny domyślnego zachowania sklepu. Jak widać w wersji angielskiej format ceny przyjmuje standard brytyjski ale waluta nadal pozostaje złoty.
Polski – waluta złoty
Wersja angielska waluta PLN
Wersja niemiecka – waluta PLN
Jeśli chcemy powiązać wersję językową z automatyczną zmiany waluty należy zmodyfikować dwie funkcje. Obie znajdują się w pliku classes/Tools.php

W funkcji odpowiedzialnej za zmianę wersji językowej switchLanguage
public static function switchLanguage
Na końcu funkcji przed wykonaniem return wystarczy dodać poniższy kod

global $cookie;
switch($context->cookie->id_lang) {
case 1: $cookie->id_currency=1; break;
case 3: $cookie->id_currency=3; break;
case 4: $cookie->id_currency=2; break;
}

Od teraz każdorazowe przełączenie języka zdefiniuje w pliku cookie walutę dla danej wersji językowej. UWAGA: Wartości id_currency oraz id_lang dla każdego sklepu będą prawdopodobnie inne są one uzależnione od kolejności wprowadzania. Ilość instrukcji również będzie inna w zależności od ilości wersji językowych oraz ilości walut w sklepie internetowym.

Jeżeli mamy włączony wykrywanie języka w zależności od wersji językowej przeglądarki internetowej. Należy w funkcji opowiedzianej za definiowanie ciasteczka (setCookieLanguage).
switch($cookie->id_lang) {
case 1: $cookie->id_currency=1; break;
case 3: $cookie->id_currency=3; break;
case 4: $cookie->id_currency=2; break;
}

Podobnie jak w powyższym przykładzie wartość id_currency oraz id_lang określana przez switch … case prawdopodobnie będzie różna w zależności od sklepu ilości walut języków i kolejności ich wprowadzania.
Polska wersja – waluta złoty
Angielska wersja – waluta funt
Niemiecki język – waluta euro
Po wykonaniu powyższych modyfikacji, po wejściu na sklep po wykryciu języka ustawi nam się odpowiednia waluta. Podobnie jak w momencie przełączania wersji językowej sklepu waluta będzie się zmieniała zgodnie ze zdefiniowaniem jak na powyższych obrazkach.Jeśli macie Państwo kłopoty z PrestaShop zapraszamy do kontaktu z naszą firmą. Zapraszamy również do zapoznania się z innymi naszymi publikacjami oraz w przypadku kłopotów z instrukcją obsługi Prestashop
Zamów wycenę
Polityka prywatności | Regulamin
Pro-link 2005-2020