O czym pamiętać przy witrynie wielojęzycznej?
Witryna wielojęzyczna to strona www, która oferuje swoim użytkownikom treści w więcej niż jednym języku. Będzie to na przykład strona dostępna w wersji polskiej i angielskiej.
- Spis treści
- Struktura URLi
- Parametr Hreflang
- Parametr X-default
- Strona wielojęzyczna, a strona multiregionalną
- Podsumowanie
W przypadku strony wielojęzycznej największym wyzwaniem seo, który trzeba rozwiązać jak najszybciej jest duplikacja treści. Google oczywiście informuje, że jego algorytmy powinny być w stanie rozpoznać treść tłumaczoną na różne języki, ale w praktyce bywa z tym różnie.
Dlatego we wskazówkach dla webmasterów od Google, wylistowane są sposoby radzenia sobie z duplikacją treści tłumaczonej na wiele języków.
Zanim jednak przejdziemy do sposobów informowania Google o różnych wersjach językowych tej samej podstrony, warto zadbać o poprawną strukturę urli.
Struktura URLi
Google rekomenduje 3 sposoby radzenia sobie z treściami multijęzykowymi. Dla Google te 3 sposoby są wymienne, jednak dla właścicieli biznesów i developerów posiadają one swoje plusy i minusy.
- Osobne domeny krajowe np. domena.pl, domena.de
Plusy:- automatyczne kierowanie językowe (na podstawie rozszerzeń domen)
- każda domena „pisze swoją własną historię”. W przypadku zmiany algorytmu Google, która zadziała negatywnie, nie musi dotknąć ona wszystkich naszych witryn
Minusy:
- koszt domen. Przy kilku językach nie robi to dużej różnicy, ale przy 30, 40, czy 50 domenach jest to już znaczący roczny koszt utrzymania
- problem z dostępnością domen (domeny mogą być zajęte, możemy nie spełniać warunków kupna niektórych domen)
- Subdomeny w domenie globalnej np. pl.domena.com, de.domena.com
Plusy:- prostota wdrożenia (wystarczy zlecić programistom stworzenie subdomen, w które zostaną „wrzucone” wersje językowe)
- można używać geolokalizacji w Google Search Console
- niskie koszty
Minusy:
- wszystkie strony działają w jednej domenie, ale domena główna na tym nie zyskuje. Każda subdomena jest traktowana jak osobna strona
- utrudniona analityka
- Podkatalogi w domenie globalnej np. domena.com/pl domena.com/de
Plusy:- prostota wdrożenia
- można używać geolokalizacji w Google Search Console
- niskie koszty
- wszystko działa w jednej domenie (linkowanie do strony głównej, powoduje wzrosty na całej domenie)
Minusy:
- wszystko działa w jednej domenie (w przypadku zmiany algorytmu Google, karę może dostać cała domena)
- utrudnione naturalne linkowanie do wersji językowych (ludzie zwykle linkują tylko do strony głównej)
Jaką opcję wybrać? Najlepszą dla biznesu. Google poradzi sobie z każdą opcją.
Moja rekomendacja to 3 opcja – czyli wybranie podkatalogów w domenie globalnej. Taka struktura jest przejrzysta zarówno dla człowieka, jak i dla bota oraz nie wymaga dodatkowych nakładów finansowych ani programistycznych.
W momencie kiedy struktura urli jest ustalona, trzeba pochylić się nad sposobem wyświetlania tej treści dla userów.
„Google zaleca używanie różnych adresów URL dla poszczególnych wersji językowych strony zamiast wykorzystywania plików cookie lub ustawień przeglądarki, by dostosować język treści na stronie”
Jest to jasna informacja dla twórcy strony, który zastanawia się nad tym w jaki sposób zaprezentować przetłumaczoną treść dla użytkownika. Zamiast kombinować z nowymi technologiami czy tłumaczeniem tekstu „na żywo” i bez zmiany urla, warto wrócić do podstaw i po prostu stworzyć osobne urle, dla treści dostępnych w różnych językach.
Parametr Hreflang
Tag hreflang=”x” został stworzony, żeby pomóc Google rozpoznać, który url powinien być wyświetlony danemu użytkownikowi. Url zostaje wybrany bazując na języku (lub lokalizacji), którą ten użytkownik posiada.
Google podaje 3 sposoby użycia parametru hreflang:
- Tagi HTML
- Nagłówki HTTP
- Sitemapy
Pierwszy sposób jest najpopularniejszy i zakłada utworzenie tagów <rel=”alternate” hreflang=”x”>
gdzie x to dany kod języka, np. pl dla języka polskiego. Takie tagi umieszczamy w <head> strony, wskazując Google wszystkie dostępne wersje językowe. Istotne jest to, żeby umieścić wszystkie dostępne wersje językowe, czyli strona w języku polskim powinna też posiadać link do wersji pl, czyli „do siebie”.
Poprawny tag wygląda tak:
<link rel="alternate" hreflang="kod_języka" href="url_strony" />
Przykładowo, artykuł pod adresem https://domena.pl/kolor-zolty, który posiada 3 różne wersje językowe: polską, niemiecka i angielską powinien posiadać 3 tagi w sekcji head:
<link rel="alternate" hreflang="pl" href="https://domena.pl/kolor-zolty" />
<link rel="alternate" hreflang="de" href="https://domena.de/gelbe-farbe" />
<link rel="alternate" hreflang="en" href="https://domena.co.uk/yellow-color" />
Uwaga! Pozostałe wersję językowe powinny posiadać dokładnie takie same tagi!
Nagłówki http, czyli drugi sposób użycia tagu hreflang, zakłada zwrócenie statusu wraz z odpowiedzią GET serwera. Przykładowy nagłówek:
Link: <url1>; rel=”alternate”; hreflang=”kod_języka_1″, <url2>; rel=”alternate”; hreflang=”kod_języka_2″, …
Nagłówków warto używać, gdy serwujemy treści w formacie innym niż html – np. mamy tłumaczone treści w pdfach, które generujemy na serwerze.
Przykład:
Link: <https://domena.pl/plik.pdf/>; rel="alternate"; hreflang="pl"
Link: <https://domena.co.uk/file.pdf/>; rel="alternate"; hreflang="en"
Link: <https://domena.de/file.pdf/>; rel="alternate"; hreflang="de"
Tak samo jak w pierwszym przypadku, wszystkie wersje językowe powinny posiadać takie same tagi.
Trzecia opcja zakłada użycie sitemap XML do poinformowania wyszukiwarek o przetłumaczonych treściach. Sitemapa powinna wyglądać mniej więcej tak:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>http://www.domena.com/en/</loc>
<xhtml:link rel="alternate" hreflang="de" href="http://www.example.com/de/" />
<xhtml:link rel="alternate" hreflang="en" href="http://www.example.com/en/" />
</url>
<url>
<loc>http://www.domena.com/de/</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://www.example.com/en/" />
<xhtml:link rel="alternate" hreflang="de" href="http://www.example.com/de/" />
</url>
</urlset>
Spośród tych 3 opcji, najprościej wdrożyć tagi html i to właśnie zalecam.
Nagłówki i sitemapy wydają się równie dobre dla Google, ale najtrudniej sprawdzić czy nie ma w nich jakichś błędów, które psują nam SEO. Łatwo jest wyobrazić sobie sytuację, w której jeden wadliwy wpis w sitemapie powoduje błędy w Google Search Console, które z kolei powodują problemy ze wszystkimi innymi wpisami z tej sitemapy. Używanie nagłówków serwerowych nie jest z kolei tak oczywiste do późniejszego sprawdzenia jak tagi html, aczkolwiek jeśli używamy ich do treści innych niż HTML, to jak najbardziej możemy używać miksu tagów dla treści html i nagłówków dla pdfów.
Parametr X-default
X-default używamy wtedy, kiedy chcemy stworzyć stronę lądowania dla użytkowników, których języka nie obsługujemy.
Na takiej stronie możemy np. przeprosić użytkownika, że nie obsługujemy jego języka, i dać mu do wyboru język z listy tych, które obsługujemy.
Przykład użycia x-default:
<link rel=”alternate” href=”https://domena.com/” hreflang=”x-default” />
Kiedy to wykorzystać? Wyobraźmy sobie stronę która obsługuję 3 języki: angielski, niemiecki i francuski. Tworzymy wtedy podstrony wraz z atrybutem hreflang:
- domena.com/en – hreflang en
- domena.com/de – hreflang de
- domena.com/fr – hreflang fr
- domena.com – hreflang x-default
Jeśli użytkownik trafi z Google na stronę główną, czyli domena.com, to jasne jest, że nie obsługujemy jego języka ojczystego (zadziała x-default). Użytkownik będzie mógł tam więc przeczytać kilka słów o stronie i wybrać sobie język którego chce używać. Rozwiązanie to z powodzeniem stosuje np. Wikipedia.
Przy wdrażaniu hreflangów na swojej stronie, warto wejść na wikipedia.com i zobaczyć (prawdopodobnie po raz pierwszy w życiu), jak wygląda strona główna tej bardzo często odwiedzanej przez nas strony.
Strona wielojęzyczna, a strona multiregionalną
Strona wielojęzyczna może być też stroną multiregionalną, czyli stroną, która posiada treści zoptymalizowane pod dany kraj. Na przykład, wersja angielska strony może posiadać specjalną wersję kierowaną do użytkowników z Anglii oraz inną dla użytkowników ze Stanów Zjednoczonych.
Wtedy rozwiązujemy to poprzez odpowiednie ustawienie tagów hreflang:
<link rel="alternate" hreflang="en-US" href="https://domena.us/" />
<link rel="alternate" hreflang="en-GB" href="https://domena.co.uk/" />
Podsumowanie
W przypadku, gdy posiadamy stronę wielojęzyczną, zadbanie o podstawowe rzeczy, a więc prawidłową strukturę URLi oraz użycie tagów hreflang jest krytyczne. Bez tych informacji, Google nie poradzi sobie z domenami, które posiadają tę samą treść. Dodatkowo prawidłowo stworzona strona sprawi, że wszyscy użytkownicy trafią w odpowiednie miejsce i nasz biznes będzie mógł się odpowiednio rozwijać.