Zweryfikowano w czerwcu 2026, opisane tutaj moduły ps_languageselector i ps_currencyselector oraz hook displayNav2 dotyczą PrestaShop 1.7, 8 i 9.

Odwiedzający z Hiszpanii trafia do Twojego sklepu w języku niemieckim. W ciągu kilku sekund skanuje górę strony, szukając sposobu na przełączenie języka na hiszpański albo przynajmniej angielski. Jeśli od razu znajdzie czytelny selektor, zostaje. Jeśli nie znajdzie nic, klika przycisk wstecz, prosto do Google, żeby znaleźć sklep, który mówi jego językiem. Taka błyskawiczna decyzja zapada codziennie w każdym sklepie międzynarodowym i zależy w całości od dwóch niewielkich widżetów front-endowych: przełącznika języka i przełącznika waluty.

Ten artykuł dotyczy konkretnie tych widżetów, miejsca, w którym znajdują się w motywie PrestaShop, bloków i hooków odpowiedzialnych za ich wyświetlanie, sporu o flagi kontra tekst, który naprawdę wpływa na konwersję, oraz tego, jak sprawić, by oba elementy były oczywiste, ale nie zaśmiecały nagłówka. To warstwa widoczna dla klienta. Mechanika pod spodem, dodawanie samych języków i walut, kursy wymiany, podatki oraz hreflang informujący Google, którą wersję pokazać. Ma swoje osobne miejsce, więc odeślę Cię do tych materiałów zamiast powtarzać je tutaj.

Dwa bloki PrestaShop, które wyświetlają przełączniki

Globus biurkowy z kolorowymi pinezkami lokalizacji obok przejrzystego elementu interfejsu z menu rozwijanym
Przełączniki języka, waluty i kraju to drobne detale witryny, dzięki którym międzynarodowi kupujący czują się jak u siebie.

Zanim zaczniesz dyskutować o flagach, ustal, co tak naprawdę edytujesz. W domyślnym motywie PrestaShop 1.7, 8 lub 9 przełączniki w nagłówku nie są ręcznie wpisane w szablon, to dwa natywne moduły podpięte u góry strony:

  • ps_languageselector, rozwijany wybór języka. Domyślnie wyświetla się przez hook displayNav2 (po prawej stronie górnego paska) i pokazuje każdy język włączony w Międzynarodowy → Lokalizacja → Języki.
  • ps_currencyselector, rozwijany wybór waluty, również domyślnie w hooku displayNav2, z listą wszystkich walut włączonych w Międzynarodowy → Lokalizacja → Waluty.
[SCREENSHOT: Prawy górny róg nagłówka sklepu pokazujący przełącznik języka (Deutsch) i przełącznik waluty (€ EUR) obok siebie]

Co to oznacza w praktyce? Jeśli w nagłówku brakuje przełącznika, rozwiązaniem prawie nigdy nie jest chirurgia motywu. Przejdź do Wygląd → Pozycje, znajdź hook displayNav2 (domyślne miejsce obu przełączników; część motywów przenosi je do displayNav1 albo własnego hooka górnego paska) i sprawdź, czy moduł jest tam przeszczepiony. Jeśli jest obecny, ale pusty, prawdziwy problem leży wyżej, masz włączony tylko jeden język albo jedną walutę, więc nie ma między czym przełączać. Widżet słusznie ukrywa się zamiast pokazywać bezużyteczną listę z jedną pozycją.

Jeden szczegół często wprowadza w błąd: przełącznik pojawia się dopiero wtedy, gdy aktywny jest drugi język lub druga waluta i gdy są przypisane do bieżącego sklepu (a w multistore także do bieżącej grupy sklepów). Jeśli prowadzisz kilka sklepów z jednego panelu administracyjnego, sprawdź, czy język jest zaznaczony przy właściwym powiązaniu sklepu, zobacz PrestaShop Multistore: prowadzenie wielu sklepów z jednego panelu administracyjnego, aby zrozumieć, jak działają te powiązania.

Gdzie umieścić selektor

Selektory języka i waluty powinny znajdować się w nagłówku, widoczne na każdej stronie bez przewijania. Domyślny górny pasek PrestaShop umieszcza je w prawym górnym rogu i właśnie tam instynktownie szukają ich klienci z zagranicy. Dwa sensowne miejsca to prawy górny róg oraz osobny górny pasek nad główną nawigacją. Najważniejsze nie jest to, które z nich wybierzesz, ale to, żeby widżet był widoczny nad pierwszym załamaniem strony, rozpoznawalny i obecny na stronie głównej, stronie, na którą najczęściej trafiają nowi odwiedzający z innych krajów.

Najczęstsza porażka to ukrycie go. Wrzucenie przełącznika do stopki albo schowanie go w mobilnym menu hamburgerowym bez widocznej flagi lub kodu waluty wymusza dokładnie te dwie sekundy szukania, które odsyłają odwiedzających z powrotem do Google. Zwłaszcza na urządzeniach mobilnych zostaw w pasku nagłówka przynajmniej aktualną flagę języka i kod waluty, nawet jeśli dotknięcie otwiera pełniejsze menu. Klient nigdy nie powinien musieć szukać dowodu, że Twój sklep obsłuży go w jego języku i pokaże mu zrozumiałą cenę.

Flagi kontra tekst kontra jedno i drugie. Spór, który warto rozstrzygnąć

To jedna z naprawdę spornych decyzji i dla większości sklepów istnieje właściwa odpowiedź. Pułapka polega na tym, że flagi reprezentują kraje, a nie języki:

  • Tylko flagi: są szybkie do zauważenia, ale niejednoznaczne i czasem wykluczające. Niemiecka flaga oznacza Niemcy. Klienci z Austrii i niemieckojęzycznej Szwajcarii mogą nie zobaczyć w niej siebie. Union Jack jako symbol „angielskiego” subtelnie mówi odwiedzającym z USA, Australii, Indii czy Irlandii, że ten angielski jest dla kogoś innego. A jeśli sprzedajesz na rynkach wrażliwych politycznie na symbole narodowe, przełącznik oparty wyłącznie na flagach może realnie zaszkodzić.
  • Tylko tekst: jest precyzyjny i jednoznaczny, „English | Deutsch | Français | Español” nie da się źle odczytać, ale wizualnie łatwo go przeoczyć. Przy sześciu lub większej liczbie języków sam tekst tworzy zatłoczony wiersz, po którym łatwo prześlizgnąć wzrokiem.
  • Flagi + tekst: to pragmatyczny wybór, na którym ląduje większość skutecznych sklepów międzynarodowych. Flaga daje natychmiastowe rozpoznanie wizualne, a nazwa języka (zapisana w tym języku, Deutsch, nie „German”) usuwa niejednoznaczność. To także najbardziej dostępna opcja, bo etykietę tekstową mogą odczytać czytniki ekranu, czego nie da się powiedzieć o samej fladze jako obrazku.

Domyślny ps_languageselector w PrestaShop jest oparty na tekście (pokazuje nazwę języka). Jeśli chcesz użyć flag albo połączenia flag z tekstem, jest to zmiana w szablonie widoku modułu albo osobny moduł przełącznika, który ma renderowanie flag w standardzie, nie zmiana w rdzeniu. Jeśli dodajesz flagi, wybierz flagę kraju najczęściej kojarzonego z danym językiem na Twoim rynku, zaakceptuj, że to konwencja, a nie prawda, i zawsze połącz ją z nazwą języka, żeby ta konwencja nie obróciła się przeciwko Tobie.

Selektor waluty: pokazanie liczby, którą klient rozumie od razu

Cena „49.99 EUR” jest natychmiast czytelna dla klienta ze strefy euro. U odwiedzającego z Polski uruchamia ciche przeliczanie z EUR na PLN; u odwiedzającego z Wielkiej Brytanii, z EUR na GBP. Takie mentalne przeliczanie to tarcie, a tarcie tuż obok ceny jest najgorszym możliwym miejscem. Przełącznik waluty, który pozwala zobaczyć „229 PLN” albo „£42”, usuwa matematykę i pozwala od razu ocenić cenę względem własnego punktu odniesienia.

Dwie rzeczy sprawiają, że selektor waluty naprawdę pracuje na wynik:

  • Wykryj i zaproponuj, nie zmuszaj. Najlepsze doświadczenie to pokazanie sklepu w sensownej domyślnej walucie i języku dla odwiedzającego, przy jednoczesnym zachowaniu widocznego przełącznika, żeby każdy mógł zmienić wybór. Twarde przekierowania na podstawie IP obracają się przeciwko Tobie: użytkownicy VPN trafiają w złe miejsce, emigranci wolą język ojczysty zamiast lokalnego, a roboty wyszukiwarek mogą zostać odbite do niewłaściwej wersji i źle zaindeksować stronę. Delikatny baner z sugestią („Przeglądać w PLN?”) za każdym razem wygrywa z wymuszonym przekierowaniem.
  • Spójność od strony produktu do finalizacji zakupu. Pokazanie EUR na stronie produktu i przełączenie na walutę lokalną dopiero przy finalizacji zakupu zaskakuje klienta w najgorszym możliwym momencie. Waluta wybrana w przełączniku musi obowiązywać w katalogu, koszyku i podczas finalizacji zakupu, PrestaShop przenosi ją przez kontekst koszyka klienta, więc Twoim zadaniem jest głównie upewnienie się, że nigdzie w motywie nie wpisano waluty na sztywno.

Uczciwa granica: przełącznik zmienia wyświetlaną walutę. To, czy również pobierasz płatność w tej walucie, zależy od bramki płatności i gotowości do księgowości wielowalutowej, to zupełnie inna decyzja. Mechanika dodawania walut, aktualizacje kursów EBC przez cron, zaokrąglanie per waluta, dzięki któremu „47.83 PLN” staje się „49.90 PLN”, oraz kwestia pobierania płatności kontra samo wyświetlanie są opisane w artykule Wiele walut i sprzedaż międzynarodowa w PrestaShop: praktyczny przewodnik konfiguracji. Jeśli w sprzedaży na terenie UE dochodzą jeszcze podatki, warto przeczytać Sprzedaż w Europie z PrestaShop: języki, waluty i podatki.

Selektor kraju: jeden wybór zamiast dwóch

Niektóre sklepy łączą oba widżety w jeden selektor kraju: wybierasz „Polska”, a sklep jednym ruchem przełącza się na język polski, PLN i opcje dostawy do Polski. Dla większości odwiedzających, którzy rzeczywiście chcą takiego dopasowanego zestawu, jest to czytelniejsze i usuwa jedną decyzję.

Kosztem jest klient o mieszanych preferencjach. Emigrant chce języka angielskiego z walutą PLN; kupujący z niemieckojęzycznej Szwajcarii chce języka niemieckiego z CHF. Połączony selektor nie potrafi tego wyrazić. Praktyczna zasada:

Twoja sytuacjaLepszy wybórDlaczego
Większość odwiedzających chce dopasowanego zestawu język+walutaPołączony selektor krajuJedna decyzja, mniej bałaganu w nagłówku, mniej koszyków z błędnymi ustawieniami
Istotna grupa emigrantów / odbiorców transgranicznych (mieszane preferencje)Osobne przełączniki języka i walutyPozwala na kombinacje EN+PLN albo DE+CHF
Sprzedajesz intensywnie na urządzeniach mobilnychOsobno, ale schowane za jedną czytelną ikonąOszczędza szerokość nagłówka bez wymuszania dopasowanego zestawu

PrestaShop domyślnie dostarcza oba przełączniki osobno, więc wzorzec połączonego wyboru kraju oznacza osobny moduł albo prace front-endowe. Decyduj na podstawie tego, kto naprawdę u Ciebie kupuje, a nie na podstawie tego, co ładniej wygląda w makiecie.

Pułapka SEO ukryta za przełącznikiem

Przełącznik jest elementem UX, ale sposób wdrożenia przełączania języka ma bezpośrednie konsekwencje SEO, a błąd w tym miejscu po cichu kosztuje Cię ruch międzynarodowy, któremu ten widżet miał służyć:

  • Każdy język potrzebuje własnego URL-a. PrestaShop robi to poprawnie od razu, po włączeniu przyjaznych URL-i otrzymujesz prefiksy /en/, /de/, /fr/ (albo domeny per sklep w multistore). Grzechem głównym jest serwowanie różnych języków pod tym samym adresem URL na podstawie ciasteczka lub zgadywania po IP; roboty mogą zaindeksować tylko jedną wersję URL-a, więc pozostałe języki praktycznie znikają z wyników wyszukiwania.
  • Kanoniczne adresy wskazujące na tę samą wersję. Każdy językowy URL powinien wskazywać canonical na samego siebie, a nie na inną wersję językową, żeby nie uruchamiać mechanizmów obsługi duplikatów treści.
  • Hreflang to część, której przełącznik za Ciebie nie zrobi. Lista rozwijana pozwala przełączyć wersję człowiekowi; hreflang mówi Google, którą wersję automatycznie pokazać konkretnemu użytkownikowi wyszukiwarki. To osobne, drobiazgowe zadanie z własnymi regułami.

Mechanika hreflang. Tagi zwrotne, x-default, kody język-region. Jest na tyle złożona, że zasługuje na osobny materiał: Tagi hreflang: jak powiedzieć Google, którą wersję językową pokazać. A jeśli dopiero budujesz sam przetłumaczony sklep, przypisujesz tłumaczenia, porządkujesz strukturę URL-i i doprowadzasz katalog do rzeczywistej wielojęzyczności zamiast połowicznego tłumaczenia, zacznij od Konfiguracja sklepu wielojęzycznego: przygotowanie PrestaShop do sprzedaży międzynarodowej.

Czyste, przewidywalne wielojęzyczne URL-e to także miejsce, w którym warstwa zarządzania URL-ami naprawdę zarabia na siebie, nasz menedżer przyjaznych URL-i SEO oraz szerszy pakiet konfiguracji SEO utrzymują porządek w ścieżkach dla każdego języka i adresach kanonicznych, dzięki czemu przełącznik front-endowy i wyszukiwarki zgadzają się co do tego, czym jest każda strona.

Najczęstsze błędy w jednym miejscu

  • Ukrywanie przełącznika. Umieszczenie w stopce albo menu hamburgerowym bez flagi wymusza dwusekundowe szukanie, przez które tracisz odwiedzającego. Nagłówek, nad pierwszym załamaniem strony, widoczny na urządzeniach mobilnych.
  • Przełączanie wyłącznie flagami. W najlepszym razie niejednoznaczne, w najgorszym wykluczające. Każdą flagę połącz z nazwą języka zapisaną w tym języku.
  • Wymuszone przekierowania IP. Psują doświadczenie użytkownikom VPN, emigrantom i robotom wyszukiwarek. Wykrywaj i sugeruj; nigdy nie zamykaj użytkownika w jednej wersji.
  • Waluta zmieniająca się dopiero przy finalizacji zakupu. Utrzymaj wybraną walutę spójnie od strony produktu aż do płatności, niespodzianki przy finalizacji zakupu wywołują porzucenia.
  • Maszynowo tłumaczone treści za wiarygodnie wyglądającym przełącznikiem. Oferowanie pięciu języków, z których cztery są surowym Google Translate, niszczy zaufanie szybciej niż porządna obsługa jednego języka. Lepiej przetłumaczyć mniej języków dobrze niż wiele źle.

Najczęściej zadawane pytania

Mój przełącznik języka nie pokazuje się w nagłówku. Co jest nie tak?

Dwie prawdopodobne przyczyny. Jeśli miejsce w nagłówku, w którym powinien być przełącznik, jest puste, sprawdź Wygląd → Pozycje i potwierdź, że ps_languageselector jest podpięty do displayNav2 (niektóre motywy przenoszą go do displayNav1 albo własnego hooka górnego paska). Jeśli moduł jest obecny, ale nic nie renderuje, prawdziwy problem leży wyżej. Masz włączony tylko jeden język, więc nie ma między czym przełączać, a widżet słusznie ukrywa się zamiast pokazywać bezużyteczną listę z jedną pozycją. W multistore potwierdź też, że drugi język jest przypisany do bieżącego sklepu.

Czy w przełączniku języka używać flag, tekstu, czy obu?

Dla większości sklepów najlepsze są flagi z tekstem. Flagi reprezentują kraje, nie języki. Niemiecka flaga może zniechęcić klientów z Austrii i niemieckojęzycznej Szwajcarii, a Union Jack sugeruje odwiedzającym z USA czy Irlandii, że angielski w tym sklepie nie jest dla nich. Sam tekst („Deutsch | Français”) jest jednoznaczny, ale wizualnie cichy i przy sześciu lub większej liczbie języków robi się zatłoczony. Połączenie daje natychmiastowe rozpoznanie wizualne oraz jednoznaczną nazwę języka zapisaną w tym języku (Deutsch, nie „German”), a do tego jest najbardziej dostępne, bo czytniki ekranu mogą odczytać etykietę tekstową.

Czy automatycznie przekierowywać odwiedzających do ich języka na podstawie IP?

Nie, wykrywaj i sugeruj, nigdy nie zmuszaj. Twarde przekierowanie IP obraca się przeciwko Tobie: użytkownicy VPN trafiają w złe miejsce, emigranci chcą języka ojczystego, a nie lokalnego, a roboty wyszukiwarek mogą zostać przerzucone do złej wersji i nieprawidłowo ją zaindeksować. Pokaż sensowną wersję domyślną, pozostawiając widoczny przełącznik, i użyj delikatnego banera („Przeglądać w PLN?”) zamiast wymuszonego przekierowania.

Czy połączyć język i walutę w jeden selektor kraju?

Tylko wtedy, gdy większość odwiedzających naprawdę chce dopasowanego zestawu. Połączony selektor „wybierz Polskę → polski + PLN” jest czystszy i usuwa jedną decyzję, ale nie obsłuży mieszanych preferencji, emigranta, który chce angielskiego z PLN, albo kupującego z niemieckojęzycznej Szwajcarii, który chce niemieckiego z CHF. Jeśli masz znaczącą grupę odbiorców transgranicznych lub emigrantów, zostaw dwa osobne przełączniki, żeby takie kombinacje były możliwe. PrestaShop domyślnie dostarcza je osobno, więc połączony wzorzec oznacza osobny moduł albo prace front-endowe.

Czy przełącznik waluty faktycznie pobiera płatność w tej walucie, czy tylko ją wyświetla?

Domyślnie zmienia wyświetlaną walutę, a PrestaShop konsekwentnie przenosi ten wybór od strony produktu przez koszyk do finalizacji zakupu za pomocą kontekstu koszyka klienta. To, czy również pobierasz płatność w tej walucie, zależy od bramki płatności i gotowości do księgowości wielowalutowej, to osobna decyzja opisana w przewodniku konfiguracji wielu walut.

Powiązane materiały

Te dwa widżety są małe, ale komunikat, który wysyłają, już nie: czytelny przełącznik języka i sensowna lokalna cena mówią odwiedzającemu z zagranicy „spodziewaliśmy się Ciebie, jesteśmy gotowi, jesteś we właściwym miejscu”. Dopracuj położenie, etykiety typu flaga plus tekst i spójność waluty między stronami, a usuniesz tarcie, które decyduje o tym dwusekundowym momencie „zostać czy wyjść”, czyli o całym zadaniu front-endu zbudowanego do sprzedaży ponad granicami.

Udostępnij ten wpis:
David Miller

David Miller

Założyciel, mypresta.rocks

David Miller to specjalista PrestaShop z ponad dekadą praktycznego doświadczenia i założyciel mypresta.rocks, studia programistycznego z Tychów. Tworzy i utrzymuje katalog 152 modułów PrestaShop, w tym 21 pakietów „Revolution" obejmujących SEO, checkout, bezpieczeństwo, wydajność, marketing, wyszukiwanie, wsparcie i operacje magazynowe, które każdego dnia usprawniają realne sklepy, testowanych na PrestaShop 1.7.8, 8.x i 9.x. Sprawuje również opiekę nad sklepami produkcyjnymi generującymi miliony rocznego obrotu, dlatego jego pracę ocenia się po realnej sprzedaży, a nie po wersjach demo. Jego doświadczenie obejmuje pełen zakres e-commerce, wydajność, bezpieczeństwo, SEO i marketing, oraz wykracza poza PrestaShop, sięgając WooCommerce, Shopify i systemów tworzonych na zamówienie. Na blogu pisze o technicznej stronie PrestaShop: co platforma naprawdę robi pod maską, co psuje się na produkcji i które rozwiązania faktycznie się sprawdzają.

Komentarze

Brak komentarzy. Bądź pierwszy!
Spodobał Ci się ten artykuł?

Otrzymuj nasze najnowsze porady, przewodniki i aktualizacje modułów prosto na swoją skrzynkę.

Możesz zrezygnować w każdej chwili. W tym celu należy odnaleźć szczegóły w naszej informacji prawnej.

Ładowanie...
Do góry