Wielojęzyczność w Magento 2 – wiele języków i walut w jednym sklepie
Jak skonfigurować sklep wielojęzyczny w Magento 2 i MageOS: Store Views, paczki językowe, waluty, tłumaczenia produktów i SEO dla wielu rynków.
Spis treści
- Architektura wielosklepowa Magento 2
- Tworzenie Store View dla nowego języka
- Instalacja i konfiguracja paczek językowych
- Tłumaczenie produktów, kategorii i treści CMS
- Konfiguracja walut i kursów wymiany
- SEO dla sklepu wielojęzycznego – hreflang
- Często zadawane pytania
Architektura wielosklepowa Magento 2
Wielojęzyczność w Magento 2 jest oparta na trzypoziomowej architekturze: Website → Store → Store View. Każdy poziom ma inny zakres konfiguracji i danych. Dla wielojęzyczności kluczowy jest Store View — każdy widok sklepu może mieć inny język interfejsu, walutę i tłumaczenia treści.
- Website — najwyższy poziom; może zawierać wiele sklepów; wspólne dane klientów (koszyki, konta)
- Store — definiuje katalog produktów i główną kategorię; może mieć wiele widoków
- Store View — widok sklepu; definiuje język, walutę i tłumaczenia; to tu odbywa się lokalizacja
Tworzenie Store View dla nowego języka – krok po kroku
W menu bocznym wybierz Sklepy → Wszystkie sklepy (Stores → All Stores). Zobaczysz drzewo: Website → Store → Store Views.
Kliknij Utwórz widok sklepu (Create Store View). Wybierz Store (sklep nadrzędny), wpisz Nazwę (np. „English Store"), Kod (np. en_store — tylko litery i podkreślenia), Status: Enabled.
W Sklepy → Konfiguracja zmień zakres (scope) na nowy Store View (lewy górny rozwijany). Przejdź do Ogólne → Ustawienia regionalne (General → Locale Options), odznacz „Use Website/Default" i wybierz język, np. English (United States). Zapisz.
Przez SSH wykonaj: php bin/magento setup:static-content:deploy en_US pl_PL (dla języków angielskiego i polskiego). Następnie wyczyść cache: php bin/magento cache:flush.
Instalacja i konfiguracja paczek językowych
Paczki językowe (Language Packs) tłumaczą interfejs Magento 2 — etykiety przycisków, komunikaty błędów, e-maile transakcyjne i inne elementy UI. Nie tłumaczą treści produktów i kategorii — te musisz przetłumaczyć ręcznie lub przez moduł tłumaczeń.
Polskie tłumaczenie Magento 2: composer require magento/language-pl_PL. Angielskie jest wbudowane. Inne języki: szukaj na Packagist (packagist.org) lub Magento Marketplace frazy „magento2 language [język]".
Po instalacji paczki: php bin/magento setup:upgrade, następnie wygeneruj zasoby statyczne: php bin/magento setup:static-content:deploy pl_PL en_US. Wyczyść cache.
Tłumaczenie produktów, kategorii i treści CMS
Treści produktów (nazwy, opisy, meta tagi) i kategorii muszą być tłumaczone ręcznie dla każdego Store View. Magento 2 używa zakresu (scope) — każda wartość może być ustawiona globalnie lub per Store View.
W edycji produktu lub kategorii, w lewym górnym rogu, z listy rozwijalnej wybierz Store View (np. „English Store"). Pola z możliwością nadpisania będą miały przycisk „Use Default Value" — odznacz go, aby wpisać tłumaczenie specyficzne dla tego widoku.
Przetłumacz: Nazwa produktu, Opis, Krótki opis, Meta Title, Meta Description i URL Key (przyjazny URL w nowym języku). Zapisz.
W Zawartość → Bloki (Content → Blocks) i Zawartość → Strony otwórz blok/stronę, zmień zakres na docelowy Store View i przetłumacz treść. Strona główna i stopka wymagają osobnych tłumaczeń dla każdego języka.
Konfiguracja walut i kursów wymiany
Magento 2 obsługuje wiele walut jednocześnie. Możesz mieć PLN jako walutę bazową dla polskiego Store View i EUR lub GBP dla widoków anglojęzycznych.
Konfiguracja walut: Sklepy → Konfiguracja → Ogólne → Ustawienia waluty. Ustaw Base Currency (waluta bazowa cen w bazie) i Default Display Currency per Store View. W Sklepy → Konfiguracja → Ogólne → Zarządzanie walutą dodaj dozwolone waluty.
SEO dla sklepu wielojęzycznego – hreflang
Tagi hreflang informują Google, że różne URL-e reprezentują tę samą stronę w różnych językach. Bez nich Google może nie rozpoznać wersji językowych i traktować je jako duplikaty treści.
Magento 2 nie generuje hreflang natywnie. Dostępne rozwiązania:
- Moduł Hreflang (Mageplaza, Amasty, MagePlaza) — automatycznie generuje tagi hreflang na podstawie Store Views
- Ręczne dodanie — w bloku head CMS każdego Store View możesz dodać tagi hreflang jako HTML
Dodatkowo dla SEO: skonfiguruj osobne URL-e per język (np. twojsklep.pl dla PL i twojsklep.pl/en/ lub en.twojsklep.pl dla EN), prześlij oddzielne sitemaps dla każdego Store View do Google Search Console.
Często zadawane pytania
Jak dodać nowy język do sklepu Magento 2?
Dodanie nowego języka wymaga trzech kroków: (1) Zainstalowania paczki językowej przez Composer: composer require magento/language-pl_PL, (2) Utworzenia nowego Store View w Sklepy → Wszystkie sklepy i przypisania paczki językowej, (3) Tłumaczenia treści produktów, kategorii i bloków CMS dla nowego Store View. Po każdym kroku konieczne jest wyczyszczenie cache i wygenerowanie zasobów statycznych.
Czy Magento 2 obsługuje wiele walut?
Tak, Magento 2 obsługuje wiele walut natywnie. Konfiguracja: Sklepy → Konfiguracja → Ogólne → Ustawienia waluty. Możesz zdefiniować walutę bazową, walutę domyślną dla każdego Store View i dozwolone waluty. Kursy walut mogą być aktualizowane automatycznie przez zewnętrzny serwis kursów lub ustawiane ręcznie przez administratora.
Jak skonfigurować hreflang dla wielojęzycznego Magento 2?
Tagi hreflang informują Google, że różne URL-e to wersje językowe tej samej strony. Magento 2 nie generuje hreflang automatycznie. Dostępne rozwiązania: moduł Mageplaza lub Amasty Hreflang Tags (generują tagi automatycznie na podstawie Store Views) lub ręczne dodanie tagów w head bloku CMS. Poprawny hreflang jest kluczowy dla SEO sklepu wielojęzycznego — zapobiega duplikacji treści między wersjami językowymi.
Zobacz też
Potrzebujesz wielojęzycznego sklepu Magento 2?
Plany Magento 2 i MageOS w smartxhosting.pl obsługują wiele języków i walut bez dodatkowych opłat. Rozwiń swój sklep na rynki zagraniczne.
Sprawdź plany Magento 2