Tarotas od Inithouse: Zarządzanie 5 językami na jednej domenie

W Inithouse tworzymy narzędzia. Jednym z naszych produktów jest Tarotas – aplikacja do kart tarota. Oferujemy treści w pięciu językach: czeskim, angielskim, polskim, słowackim i niemieckim. Wszystko to znajduje się na jednej domenie.

Musieliśmy wybrać strukturę dla naszego wielojęzycznego systemu. Rozważyliśmy trzy opcje:

  • Domeny krajowe TLD (example.cz)
  • Subdomeny (cs.example.com)
  • Podkatalogi (example.com/cs/)

Wybraliśmy podkatalogi. Oto dlaczego.

Podkatalogi pozwalają trzymać wszystko w jednym miejscu. Korzystasz z jednego wdrożenia, jednego certyfikatu SSL i jednej właściwości w Search Console. Zachowujesz również cały autorytet linków w jednym miejscu. Jest to kluczowe dla produktów na wczesnym etapie rozwoju.

Inne opcje wiążą się z wysokimi kosztami:

  • Domeny TLD oferują silne targetowanie geograficzne. Musisz jednak zarządzać wieloma domenami i rekordami DNS, co generuje ogromny narzut operacyjny.
  • Subdomeny działają jak pół-niezależne witryny. Powoduje to rozproszenie autorytetu linków. Potrzebujesz również osobnych właściwości w Search Console dla każdej z nich.

Nasz stos technologiczny również wpłynął na ten wybór. Tarotas korzysta z React. Podkatalogi to po prostu trasy. Nasz router obsługuje je bez problemu. Subdomeny wymagałyby skomplikowanych zmian w DNS i procesie wdrażania.

Aby to działało, używamy tagów hreflang. Tagi te informują wyszukiwarki, który język należy wyświetlić. Jednak ich implementacja bywa problematyczna.

Typowe błędy, które psują wielojęzyczne SEO:

  • Brak dwukierunkowych linków. Jeśli strona A linkuje do strony B, strona B musi linkować z powrotem do strony A.
  • Błędne tagi canonical. Każda wersja językowa musi wskazywać samą siebie jako kanoniczny adres URL. Jeśli skierujesz wszystkie języki na jeden angielski adres URL, Google usunie z indeksu pozostałe wersje językowe.
  • Wstrzykiwanie po stronie klienta (client-side injection). Wyszukiwarki mogą nie widzieć tagów, jeśli wstrzykujesz je wyłącznie za pomocą JavaScriptu. Musisz upewnić się, że metatagi pojawiają się w początkowym kodzie HTML.
  • Zapominanie o x-default. Potrzebujesz języka zapasowego (fallback) dla użytkowników, dla których nie znaleziono dopasowania językowego.

Nasza rada dla Twojego wielojęzycznego produktu:

  • Używaj podkatalogów, jeśli zależy Ci na prostocie i wspólnym autorytecie.
  • Używaj domen TLD, jeśli targetowanie geograficzne i lokalne ceny są ważniejsze niż język.
  • Upewnij się, że Twoje adresy URL canonical są samoodniesialne dla każdego języka.
  • Używaj tagów dotyczących wyłącznie języka, jeśli Twoje treści są uniwersalne ponad granicami.
  • Monitoruj Google Search Console pod kątem ostrzeżeń o duplikowaniu treści.
  • Czekaj tygodniami na rezultaty. Google przetwarza te sygnały powoli.

Jeśli Twój ruch międzynarodowy wydaje się niski, najpierw sprawdź tagi canonical. To tam zazwyczaj kryje się błąd.

Źródło: https://dev.to/jakub_inithouse/tarotas-by-inithouse-how-we-handle-5-languages-on-one-domain-without-hreflang-disasters-1nc1