Różne wersje językowe strony – jak wdrożyć? [Hreflang]

Autor: Magdalena Bród

Parzy pyszną kawę, sprząta biuro, ogarnia dobre audyty i robi skuteczne SEO dla rozbudowanych e-commerców i wieeeelkich portali. W wolnym czasie bloguje. Kocha WordPressa i zrobi z nim prawie wszystko. Uwielbia gotowanie i podróże – zarówno te bliższe, jak i te w dalsze zakątki świata.

7 września 2020

W niektórych biznesach nadchodzi dzień, że ojczysty rynek przestaje wystarczać. Naturalnym więc zdaje się pojawienie się w innych krajach, z innymi językami. Jak się w tym ma odnaleźć strona internetowa? Co zrobić, żeby każdemu pojawiał się odpowiedni język, odpowiednia lokalizacja i żeby nie było z tym cyrków? Z pomocą przychodzi HREFLANG, o którym opowiem w dzisiejszym artykule.

Hreflang – co to takiego?

Tag hreflang informuje roboty wyszukiwarek o tym, że dana strona internetowa ma więcej niż jedną wersję językową, dla użytkowników mówiących w różnych językach lub dla ludzi posługujących się tym samym językiem, ale z różnych krajów (np. Niemcy i Austria, USA i Wielka Brytania itp.). Decydując się na obecność na różnych rynkach, wdrożenie hreflang jest obowiązkowe.

Hreflang sprawia, że użytkownik wchodzący na stronę, zostanie od razu poprowadzony na jego wersję językową. Nie będzie musiał przeklikiwać flag w menu i szukać, trafi tam z automatu.

Istotne jest to, że dzięki wdrożeniu hreflang, Google nie uzna jako duplikat wersji na rynek USA i na rynek Wielkiej Brytanii, które mogą mieć te same treści, ale np. inne dane kontaktowe, inną walutę, inny koszt transportu. Hreflang mówi wyszukiwarce, że to nadal to samo, ale do dwóch różnych grup docelowych.

Hreflang działa w Google, Yandex i Seznam. W przypadku innych, znacznik <meta lang=”kod języka”> musi wystarczyć. Biorąc jednak pod uwagę popularność Google (na rynku zachodnim) i Yandex (na rynku wschodnim), możemy nie przejmować się innymi wyszukiwarkami.

Jak to działa?

W pewnym uproszczeniu wygląda to tak:

  • Użytkownik odpytuje Google o jakąś frazę
  • Google przygotowuje odpowiedź
  • Google szuka odpowiednich wersji językowych właśnie na podstawie atrybutu hreflang
  • Google serwuje wyniki

Jak wdrożyć?

Informowanie o wersjach językowych można wdrożyć na cztery sposoby: W sekcji head, jako nagłówek HTTP, przez mapę XML i w Google Tag Managerze (Mimo że ta opcja nie znajduje się w dokumentacji Google, to autorzy mówią, że działa). Najpopularniejszym sposobem jest dodanie hreflangu do sekcji head w taki sposób:

<link rel=”alternate” hreflang=”kod języka kod regionu (opcjonalny)” href=”url strony”>

Kod języka podajemy wg ISO 639-1 (https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) a kod regionu wg ISO 3166-1 Alpha 2 (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Adres url musi być podany jako ścieżka absolutna.

Taki kod musi się znajdować w każdej wersji strony i dla każdej wersji strony. Jeśli więc mamy wersję językową po polsku, angielsku i francusku, będziemy musieli dodać trzy oddzielne hreflangi.

<link rel=”alternate” hreflang=”pl” href=”https://cluegroup.pl”>
<link rel=”alternate” hreflang=”en” href=”https://cluegroup.pl/en”>
<link rel=”alternate” hreflang=”fr” href=”https://cluegroup.pl/fr”>

Dobrą praktyką jest też umieszczenie tagu dla użytkownika, który nie używa żadnego z powyższych języków, np. niemieckiego. Wtedy “wyląduje” na uniwersalnej stronie.

<link rel=”alternate” hreflang=”x-default” href=”https://cluegroup.pl/en”>

O czym należy pamiętać?

  • Każda podstrona strona musi mieć hreflang do każdej wersji językowej,
  • adresy url zawsze muszą być pełne i trzeba pamiętać o http/https,
  • wszystkie wersje językowe strony muszą na siebie wskazywać,

Hreflang a rel=”canonical”

Trzeba pamiętać, że hreflang nie zastępuje adresów kanonicznych. Te również trzeba dodać. Trzeba dodać rel=”canonical” na każdej stronie i ma on prowadzić do siebie samej. Więc będzie to wyglądało tak:

Na stronie głównej, czyli https://cluegroup.pl:

<link rel=”cannonical” href=”https://cluegroup.pl”>
<link rel=”alternate” hreflang=”pl” href=”https://cluegroup.pl”>
<link rel=”alternate” hreflang=”en” href=”https://cluegroup.pl/en”>
<link rel=”alternate” hreflang=”fr” href=”https://cluegroup.pl/fr”>

Na stronie https://cluegroup.pl/en:

<link rel=”cannonical” href=”https://cluegroup.pl/en”>
<link rel=”alternate” hreflang=”pl” href=”https://cluegroup.pl”>
<link rel=”alternate” hreflang=”en” href=”https://cluegroup.pl/en”>
<link rel=”alternate” hreflang=”fr” href=”https://cluegroup.pl/fr”>

I tak dalej…

Jak wdrożyć hreflang?

Niełatwo za tak wielkie wdrożenie zabrać się ręcznie. Z pomocą przychodzą narzędzia, które znacznie usprawniają proces.

Hreflang Tags Generator

Bardzo usprawniające proces narzędzie dostępne tutaj. Wystarczy podać adresy wersji językowych, wybrać język i ewentualnie region. Ustalamy czy ma to być kod do HTML czy do Sitemapy i klikamy, aby generowało.

Crawlery typu Screaming frog, Sitebulb, Oncrawl

Z pomocą mogą też przyjść crawlery, które po analizie wypluwają nam informacje, na których stronach nie ma hreflanga, gdzie brakuje tagu x-default i ogólnie jak działa ten nasz schemat. Zaproponują też gdzie i co poprawić, by wszystko działało prawidłowo.

Wtyczki do WordPressa – Polylang, WPML itp.

Jeśli nasza strona postawiona jest na WordPressie, to poszczególne wtyczki mogą wykonać większość pracy za nas. Darmowa Polylang powinna wystarczyć w większości przypadków, podczas gdy wymieniona wyżej WPML, to płatny ale za to kombajn z milionem funkcji.

Podsumowanie

Jak widać, hreflang to kwestia mocno złożona, trzeba się do niej przygotować na spokojnie i dokładnie, bo teoretycznie nie jest to czynnik rankingowy, ale praktycznie – może mocno pomóc w naszym SEO, między innymi dlatego, że znacznie zmniejsza współczynnik odrzuceń. A więc teraz powoli do czytania i hop do implementacji.

Podobne wpisy

 

 

1 komentarz

  1. Avatar

    Hreflangi nie są obowiązkowe. Są inne, równorzędne sposoby na informowanie wyszukiwarki o wersjach językowych strony jak nagłówki http, mapy strony, narzędzie kierowania międzynarodowego w google search console.

    Odpowiedz

Wyślij komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *