Chciałbym skonfigurować witrynę Magento, aby mogła rozpoznawać domyślny język i lokalizację użytkownika oraz wyświetlać witrynę w tym języku i z odpowiednią lokalizacją.
Na przykład:
Użytkownik z Rosji z domyślnym językiem rosyjskim przejdzie bezpośrednio do strony internetowej z językiem rosyjskim z Rublami jako domyślną walutą i cenami.
czy to możliwe? Jeśli tak to jak?
źródło
Istnieje rozszerzenie Magento GeoIP (napisane przeze mnie), które pobiera najnowszy plik danych MaxMind i okresowo go aktualizuje.
Sugeruję dołączenie do
controller_front_init_before
wydarzenia. Możesz użyć następującego kodu, aby sprawdzić kod ISO 3166-1 kraju odwiedzającego, a następnie przekierować go do widoku sklepu korespondencyjnego, jeśli taki posiadasz:Szczegółowy artykuł na temat korzystania z tego rozszerzenia można znaleźć tutaj .
źródło
spójrz na http://www.thefutureoftheweb.com/blog/use-accept-language-header, jeśli możesz programować. Możesz dokonać zmiany w
index.php
ładowaniu widoku sklepu odpowiedniego dla języka.źródło
Kolejną rzeczą do obejrzenia jest GEO IP.
Kilka wierszy kodu poda kod kraju użytkownika, który możesz zmienić na tej podstawie.
Pamiętaj jednak, że będziesz mieć problemy z użyciem kodu opartego na przekierowaniu, jeśli korzystasz z tego samego sklepu z wersją Enterprise Edition i pełną pamięcią podręczną, gdy pierwsza strona zostanie zapisana w pamięci podręcznej .
źródło
Vary: Accept-Language
w nagłówku zarówno przeglądarki, jak i FPC.Inną opcją jest użycie auto_prepend konfiguracji PHP . Spowoduje to, że wszystkie skrypty obsługiwane przez PHP uruchomią skrypt przed uruchomieniem faktycznie żądanego skryptu, ale po .htaccess (jeśli go używasz).
Podejście to w połączeniu z niektórymi innymi sugestiami (np. Użycie MaxMind do danych lokalizacji geograficznej i widoków sklepów dla określonych regionów) może dać dość czyste podejście.
Jeśli używasz wersji Magento> = 1.4, domyślny kod sklepu można skonfigurować, ustawiając wartość $ _SERVER ['MAGE_RUN_CODE'].
W pliku .htaccess lub konfiguracji apache dodaj:
php_value auto_prepend_file /var/www/mystore/path/to/script.php
W twojej
script.php
wykonać wszelkie niezbędne logiki biznesowej i ustawić odpowiedni kod sklepu:Należy zauważyć, że będzie to dotyczyć wszystkich żądanych plików PHP, więc musisz o tym pamiętać.
źródło