Kanoniczny URL i język HTML: jasne sygnały dla Google

Wyszukiwarki takie jak Google dobrze rozpoznają język strony, ale błędne <html lang> nadal tworzy sprzeczny sygnał. Może utrudnić prawidłową interpretację i indeksowanie strony, szczególnie gdy tytuły, nawigacja lub inne metadane używają innego języka niż główna treść.
Bardziej bezpośrednim zagrożeniem jest dostępność. Czytniki ekranu i narzędzia zamieniające tekst na mowę używają informacji o języku do wyboru zasad wymowy i głosu. Błędna deklaracja może sprawić, że strona zabrzmi niepoprawnie lub stanie się trudna do zrozumienia. Asystenci przeglądarki i agenci AI również mogą zacząć czytać albo przetwarzać stronę w niewłaściwym języku.
Kanoniczny URL i atrybut HTML lang odpowiadają wyszukiwarkom na dwa różne pytania:
- Canonical: który URL powinien reprezentować tę treść w indeksie?
- Język: w jakim języku napisano dokument?
Ustaw oba elementy jawnie. Ograniczają sprzeczne sygnały, pomagają Google zrozumieć stronę i zwiększają wiarygodność audytów technicznych.
Zalecany wzorzec
<html lang="pl">
<head>
<link rel="canonical" href="https://example.com/poradnik">
<title>Przykładowy poradnik</title>
</head>
<body>...</body>
</html>
Kanoniczny URL powinien być bezwzględny, używać HTTPS oraz preferowanej nazwy hosta i zazwyczaj wskazywać bieżącą stronę. Język musi odpowiadać widocznej treści i używać prawidłowego znacznika BCP 47, na przykład en, en-US, pl lub pl-PL.
Kanoniczne adresy URL konsolidują sygnały duplikatów
Ta sama treść może być dostępna pod wieloma adresami z powodu parametrów zapytania, mieszanych linków HTTP i HTTPS, hostów www i domen głównych, końcowych ukośników, wersji do druku lub skopiowanych linków kampanii. Takie adresy dzielą linki i uwagę crawlerów między kilka wariantów.
Link canonical mówi Google, który URL preferujesz. Jest wskazówką, a nie bezwzględnym poleceniem. Google może wybrać inny adres kanoniczny, gdy przekierowania, linki wewnętrzne, mapy witryny, treść strony lub nagłówki HTTP przekazują sprzeczne informacje.
Powielona treść zwykle nie powoduje „bana”. Rzeczywiste ryzyka są mniej dramatyczne, ale nadal ważne:
- Google indeksuje URL, którego nie chcesz promować.
- Linki i sygnały rankingowe dzielą się między warianty.
- Search Console zgłasza duplikaty lub alternatywny canonical.
- Crawlery tracą czas na ponowne odwiedzanie równoważnych adresów.
Zadbaj o zgodność sygnałów: przekieruj przestarzałe warianty, linkuj wewnętrznie do preferowanego URL, umieszczaj w sitemapie wyłącznie adresy kanoniczne i używaj tego samego canonical w renderowanym HTML.
Język HTML musi odpowiadać widocznej treści
Atrybut lang pomaga wyszukiwarkom, przeglądarkom, czytnikom ekranu, narzędziom tłumaczącym i agentom AI interpretować dokument. Nie wybieraj go na podstawie końcówki domeny ani lokalizacji użytkownika. Wybierz język używany w treści strony.
Użyj języka podstawowego, gdy jeden język dominuje:
<html lang="pl">
Dodaj podtag regionalny tylko wtedy, gdy jest potrzebny i poprawny:
<html lang="pl-PL">
Polska strona deklarująca lang="en" wysyła sprzeczny sygnał. Popraw deklarację zamiast tłumaczyć wyłącznie title lub nawigację. Dla krótkich fragmentów w innym języku ustaw lang na konkretnym elemencie:
<p>Ta strona jest po polsku, ale <span lang="en">this fragment is in English</span>.</p>
Język to nie hreflang
lang opisuje bieżący dokument. hreflang łączy oddzielne regionalne lub językowe wersje równoważnej treści. Tłumaczona witryna może potrzebować obu:
<html lang="pl">
<link rel="alternate" hreflang="en" href="https://example.com/guide">
<link rel="alternate" hreflang="pl" href="https://example.com/pl/poradnik">
<link rel="alternate" hreflang="x-default" href="https://example.com/guide">
Każda przetłumaczona strona powinna zazwyczaj wskazywać samą siebie jako canonical. Nie ustawiaj angielskiej strony jako canonical dla wszystkich tłumaczeń, ponieważ prosisz wtedy Google o potraktowanie ich jako duplikatów zamiast osobnych wersji językowych.
Checklista audytu
- Każda indeksowalna strona ma jeden link canonical w renderowanym HTML.
- Canonical jest bezwzględny, używa HTTPS i wskazuje preferowaną nazwę hosta oraz ścieżkę.
- Przekierowania, linki wewnętrzne i adresy w sitemapie są zgodne z canonical.
- Cel canonical zwraca
200, może być indeksowany i zawiera równoważną treść. <html lang>odpowiada głównemu widocznemu językowi.- Podtagi regionalne są prawidłowe i zamierzone.
- Przetłumaczone odpowiedniki używają wzajemnych linków
hreflang, gdy są potrzebne. - Wersje językowe wskazują same siebie jako canonical.
- Google Search Console potwierdza wybrany canonical i zaindeksowany URL.
Deklaracje canonical i języka nie zastępują użytecznej treści. Jednoznacznie określają tożsamość strony, dzięki czemu wyszukiwarki poświęcają mniej czasu na zgadywanie, a więcej na indeksowanie wersji przeznaczonej dla użytkowników.