Wiele witryn wyświetla różne wersje strony w zależności od języka lub regionu użytkownika. hreflang
informują wyszukiwarki o adresach URL wszystkich wersji strony, aby mogły wyświetlać odpowiednią wersję dla danego języka lub regionu.
Dlaczego audyt Lighthouse hreflang
się nie udaje
Lighthouse oznacza nieprawidłowe linki hreflang
:
Lighthouse sprawdza hreflang
linki w head
stronie i w jej nagłówkach odpowiedzi.
Następnie Lighthouse sprawdza, czy w linkach hreflang
znajdują się prawidłowe kody języków.
Lighthouse zgłasza wszystkie hreflang
z nieprawidłowymi kodami języka.
Lighthouse nie sprawdza kodów regionów ani mapy witryny.
Jak zdefiniować link hreflang
dla każdej wersji strony
Załóżmy, że masz 3 wersje strony:
- Wersja angielska:
https://example.com
- Wersja hiszpańska:
https://es.example.com
- Wersja niemiecka:
https://de.example.com
Istnieją 3 sposoby informowania wyszukiwarek o tym, że te strony są równoważne. Wybierz metodę, która jest najłatwiejsza w Twojej sytuacji.
Opcja 1. Dodaj linki hreflang
do <head>
każdej strony:
<link rel="alternate" hreflang="en" href="https://example.com" />
<link rel="alternate" hreflang="es" href="https://es.example.com" />
<link rel="alternate" hreflang="de" href="https://de.example.com" />
Każda wersja strony musi zawierać linki do wszystkich innych wersji, w tym do siebie samej. W przeciwnym razie wyszukiwarki mogą ignorować linki hreflang
lub interpretować je nieprawidłowo.
W przypadku stron, na których użytkownicy mogą wybrać język, użyj x-default
klucza:
<link rel="alternate" href="https://example.com" hreflang="x-default" />
Opcja 2. Dodaj do odpowiedzi HTTP nagłówki Link
:
Link: <https://example.com>; rel="alternate"; hreflang="en", <https://es.example.com>;
rel="alternate"; hreflang="es", <https://de.example.com>; rel="alternate"; hreflang="de"
Opcja 3. Dodaj informacje o wersji językowej do mapy witryny.
<url>
<loc>https://example.com</loc>
<xhtml:link rel="alternate" hreflang="es"
href="https://es.example.com"/>
<xhtml:link rel="alternate" hreflang="de"
href="https://es.example.com"/>
</url>
Wskazówki dotyczące wartości hreflang
- Wartość
hreflang
musi zawsze zawierać kod języka. - Kod języka musi być zgodny z formatem ISO 639-1.
- Wartość
hreflang
może też zawierać opcjonalny kod regionalny. Na przykłades-mx
to hiszpański w Meksyku, aes-cl
to hiszpański w Chile. - Kod regionu musi być zgodny ze standardem ISO 3166-1 alfa-2.