Strony internetowe w kilku językach

W tym wpisie chciałbym się podzielić doświadczeniami związanymi z tworzeniem stron internetowych, które są dostępne w wielu językach. Wielojęzyczność stron to bardzo ciekawy temat. Projektując stronę która ma być dostępna w języku polskim, angielskim i niemieckim musimy wziąć pod uwagę kilka zasadniczych kwestii. Najważniejsze z nich to zarządzanie treścią, optymalizacja SEO, hosting i wymogi prawne.

Jak i w tym przypadku jestem zwolennikiem podejścia „wszystko albo nic”. Tłumaczenie samych tekstów bez interfejsu lub tłumaczenie wybranych części to trochę droga na skróty.

No chyba, że od początku planujemy taką funkcjonalność. W dalszym etapie wytłumaczę dlaczego w poszczególnych wersjach językowych nie należy różnicować treści i aby nie mylić lokalizacji z tłumaczeniem.

1. Zarządzanie treścią

Powiem wprost bez owijania w bawełnę: większość  CMSów „wymięka” pod tym kątem. Mniej znane CMSy nie mają takiego wsparcia wogóle lub trzeba kombinować. Dodatkowa wtyczka dla WordPressa WPML jest moim zdaniem średnio przemyślana i przekombinowana. Opóźnia działanie strony i nie jest elastyczna co powoduje problemy z pozycjonowaniem stron wielojęzycznych i konieczność poniesienia dodatkowych kosztów związaną z niepotrzebną dodatkową pracą.

Jeśli chodzi o wielojęzyczny WordPress to przygotowałem własną modyfikację na takie okoliczności. Szablon od początku jest tworzony z myślą o wielojęzyczności. W zależności od intensywności wykorzystywania danego zasobu przygotowuję tablice translacyjne lub całe skrypty w alternatywnej wersji językowej. Po co? A no dla szybkości działania.

Tablice po kilka tysięcy rekordów (tak jak jest to przykłądowo rozwiazane w skrypcie sklepowym PrestaShop) to jakieś nieporozumienie. Problemy wychodzą na wierzch jak takie tablice chcemy edytować. Nie dość że działa to wolno to na 70% hostingach nie da się tego zrobić. W tych lepszych hostingach typu home.pl, nazwa.pl OVH trzeba edytować pliki konfiuguracyjne. Przy intensywnych użytkowaniu strona lub serwis WWW zaczyna działać wolno co ma wpływ na pozycję w Google, zadowolenie użytkowników i… no właśnie sprzedaż.

Trywialny przykład funkcji z tablicą translacyjną

function getxt($text){
   $pol = array(
   "copyright" => "Firma © 2017 Wszelkie prawa zastrzeżone.",
   "menu_home" => "Strona główna",

   (...)
   );

   echo $pol["$text"];		
}

W szablonie możemy potem wywołać dany ciąg:

<p class="copyright-info">
   getxt("copyright")
</p>

Co po interpretacji da nam:

<p class="copyright-info">
   Firma © 2017 Wszelkie prawa zastrzeżone
</p>

To czy tworzyć tablice wielowymiarowe z wieloma językami, czy warunkowo doklejać poszczególne translacje trzeba rozważyć przy konkretnym przypadku. Sam mechanizm pozostaje w gruncie rzeczy nie zmieniony.

Co nam to daje? Przedewszystkim: jedna strona, jeden szablon, jeden plik. Zmiana powiedzmy wizualna na takiej stronie automatycznie jest widoczna we wszystkich wersjach językowych. Tego samego mechanizmu możemy użyć do walut, obrazków lub powiedzmy tej części interfejsu która musi z jakichś powodów być zmieniona.

Typowe treści dla poszczególnych języków powinny być wprowadzane osobno. Nalezy też obsłużyć wyjątek polegający na tym, że nie wszystkie treści są przetłumaczone. Skrypt powinien reagować np. ukrywać nieprzetłumaczoną treść lub pytać czy wysietlić treść w jezyku angielskim.

2. Design

O tym jak odpowedni design jest ważny przy wielojęzycznych stronach przekonałem się kiedy musiałem dostosować pole copyright, które zwykle ma:

„Wszystkie prawa zastrzeżone”

lub „All rights reserved”

do japońskiego
„当サイト内のすべてのコンテンツは著作権法により保護されています。”

Na szczęście projektowanie od podstaw stron responsywnych już dawno wykształciło u mnie taki odruch projektowania elastycznego. To znaczy, że wszystko się mieści i inteligentnie dopasowuje się do elementów położonych obok.

Przemyślany projekt to gwarancja tego że strona nie będzie wyglądła atrakcyjnie tylko w wybranym języku (lub kilku wybranych językach) ale we wszystkich.

3. Pozycjonowanie i SEO

To czy chcemy mieć osobne domeny (np. firma.com, firma.pl, firma.de) czy domeny z prefiksami (np. pl.firma.com de.firma.com) czy jedną domenę i podkatalogi (firma.pl/de/ firma.pl/en/) nie ma znaczenia a jeżeli ma to bardzo marginalne.

Grunt to przewidzieć sytuacje, w których ze wzgledu na SEO kod strony musi być dostosowany do danej wersji jezykowej. Mam tutaj na myśli takie elementy jak znaczniki title, lang, meta opis, słowa kluczowe itp…

4. Hosting

Nie masz szans w zagranicznych wersjach Google z pierwszym lepszym hostingiem. Po pierwsze: jeżeli Google widzi, że nasz serwer jest postawiony w Polsce w konfrontacji ze stroną konkurencji o tej samej jakości ale która jest postawiona na serwerze w Wielkiej Brytanii zawsze będziemy przygrywać dla zapytań brytyjczyków. Ba, przy odrobinie szczęścia może będziemy gdzieś na n-tej stronie wyszukiwań.

Z pomocą przychodzi moje rozwiazanie, które rozwijam od 2010 roku. Posiadając dostęp do adresów z całęgo globu ziemskiego możemy sobie wybierać czy adres de.firma.pl ma konkurować w Polsce, w Niemczech czy w USA.

5. Prawo

A raczej to czego nie trzeba się bać. Nie myl tłumaczenia z lokalizacją. Fakt że twoja strona jest dostępna w innym języku nie oznacza, że twoja działalność „wkracza na rynek” niemiecki. Nie musisz znać handlowego prawa niemieckiego ani działać zgodnie z nim. To wydaje się paradoksalne ale nawet nie musisz obsługiwać klientów z tego kraju. Popatrz na tłumaczenie strony internetowej jak na dostarczenie treści w innej formie. Jakiekolwiek łączenie obaw z prawem handlowym w innym kraju jest tutaj bezpodstawne. Najważniejsze jest to gdzie jest zarejestrowana Twoja działalność.

Pamiętaj jednak, że tłumaczenie regulaminów i dostosowanie swojej oferty dla klientów z zagranicy to kolejna zachęta dla nich, która z pewnością odbije się na wynikach sprzedaży.

6. RTL (czyli Right To Left)

Jest wiele języków, które czytamy z prawej do lewej. Nie wystarczy zmienić tylko wyrównania do prawej. Odbicie lustrzane musi obejmować kolejnośc treści i takie elementy jak menu, przyciski nawigacyjne, zdjecia a nawet kierunek przewiajania elementów w slajderach. Tylko po to aby treść wyglądała naturalnie dla klientów posługujących się na przykład językiem arabskim.

od prawej do lewej

Język HTML5 posiada natywne wsparcie takiej funkcji. Tego typu funkcjonalność też należy przewidzieć już na etapie projektowania strony.

7. hreflang

Warto zainteresować się linkiem:

<link rel="alternate" hreflang="en" href="https://adres-strony.pl">

Jest to sygnał dla przeglądarki, że alternatywna wersja językowa istnieje i może być wyświetlona użytkownikom. Ułatwia to przeglądarkom zwracanie trafnych wyników i pozytywnie wpływa na pozycjonowanie strony wielojęzycznej.

8. Lokalizacja

Chcąc udostępnić wybrane produkty w danym kraju nie zaprzęgaj do tego skryptu tłumaczeniowego. Poproś aby to klient zadeklarował z jakiego jest kraju i na tej podstawie różnicuj ofertę. Pamiętaj, że takie języki jak niemiecki i francuski są używane w wielu krajach.

9. Systemy miar, zapis liczb i inne „pułapki”

W Polsce separatorem dziesiętnym jest przecinek, a do oddzielania grup trzycyfrowych stosujemy spację, np: 12 481,63. Tak samo jest w Czechach, Włoszech, Niemczech, Francji i Hiszpanii. w pozostałych większych krajach jest to kropka. Warto też wiedzieć w jakim kraju i kiedy używa się cali.

Nasi zachodni sąsiedzi mają „E-Mail” my mamy „E-mail” anglojęzycznie mamy Email. Warto znać takie rzeczy. Drobiazgi mają wpływ na wiarygodność zaś bardziej poważne różnice mogą prowadzić do pewnych nieporozumień 🙂

Podsumowanie

Jak widać udostępnienie strony internetowej klientom wielu wersjach językowych nie stanowi problemu. Do ciebie należy jedynie decyzja komu powierzyć zadanie stworzenia takiej strony. Jak zwykle i tutaj liczy się doświadczenie.

Daj znać czego potrzebujesz: przystosowanie istniejącej strony, lub stworzenie od podstaw wielojęzycznego sklepu internetowego lub strony firmowej? Przygotuję skrojoną dla ciebie propozycję – Kontakt.

Strony internetowe w kilku językach
4.55 (91%) głosów: 20