Jak mají spolupracovat canonical a hreflang?
Každá indexovatelná jazyková URL má obvykle canonical sama na sebe a stejnou sadu hreflang odkazů na všechny odpovídající verze, včetně sebe. Českou stránku proto nedávejte jako canonical slovenské nebo německé verze jen proto, že vznikla první. Hreflang neurčuje hlavní URL: pomáhá Googlu přiřadit správný jazyk a region. Odkazy musí být obousměrné, úplné a vést na dostupné, indexovatelné canonical URL.
U jednojazyčného e-shopu může technické SEO působit přehledně. Jakmile ale přidáte slovenštinu, němčinu nebo další trh, vzniknou podobné URL, stejné produkty a dvě značky, které se často zaměňují: canonical a hreflang. Jedna chybná šablona pak dokáže zasáhnout tisíce produktů. Tento návod ukazuje bezpečný model i kontrolu, kterou zvládnete bez programování.
Canonical odpovídá na otázku „která URL je hlavní mezi duplicitami?“. Hreflang odpovídá na otázku „která odpovídající URL je určená pro tento jazyk nebo region?“. Jedna značka nenahrazuje druhou.
Canonical a hreflang mají rozdílnou práci
| Značka | Co sděluje | Běžné nastavení mutace |
|---|---|---|
rel="canonical" | Preferovanou URL mezi stejnými nebo velmi podobnými stránkami | Každá kvalitní jazyková verze odkazuje sama na sebe |
rel="alternate" hreflang | Odpovídající verze pro určitý jazyk nebo jazyk a region | Všechny verze uvádějí stejnou úplnou sadu alternativ |
Google označuje canonical za signál, nikoli příkaz. Stejně tak může chybnou nebo neúplnou hreflang sadu ignorovat. Technické značky proto musí odpovídat obsahu, interním odkazům, sitemapě a URL, které skutečně vracejí stav 200.
Modelové nastavení pro českou, slovenskou a německou verzi
Představte si stejný produkt na třech samostatných doménách. Do hlavičky české stránky patří například:
<link rel="canonical" href="https://example.cz/produkt" /><link rel="alternate" hreflang="cs" href="https://example.cz/produkt" /><link rel="alternate" hreflang="sk" href="https://example.sk/produkt" /><link rel="alternate" hreflang="de" href="https://example.de/produkt" /><link rel="alternate" hreflang="x-default" href="https://example.cz/produkt" />
Slovenská i německá stránka mají stejných pět hreflang řádků. Liší se pouze canonical: slovenská odkazuje na svou slovenskou URL a německá na svou německou URL. Pokud některá verze na konkrétním trhu neexistuje, nenahrazujte ji jiným produktem jen proto, aby byla sada úplná.
Adresy musí být absolutní, tedy včetně https:// a domény. Kód jazyka vychází z ISO 639-1, například cs, sknebo de. Volitelně lze doplnit region, napříkladde-AT. Samotné CZ, SK neboEU není platný jazykový údaj.
Hreflang musí být obousměrný a shodný
Pokud česká stránka ukáže na slovenskou, slovenská musí ukázat zpět na českou. Google tuto návratovou vazbu vyžaduje proto, aby cizí web nemohl libovolně prohlásit vaši stránku za svou jazykovou alternativu. Každá verze má navíc uvést i samu sebe.
U velkého katalogu není potřeba držet pořadí řádků, ale jejich obsah musí být stejný. Když se produkt z německé mutace odstraní, upravte celou jeho jazykovou skupinu. Jednostranná oprava na české stránce nestačí.
Co znamená x-default
Hodnota x-default označuje neutrální záložní URL pro návštěvníky, kteří neodpovídají žádné uvedené kombinaci. Hodí se pro rozcestník jazyků nebo pro výchozí verzi e-shopu. Google ji doporučuje, ale není povinná pro platnost celé sady.
Nepoužívejte ji jako univerzální náplast. Pokud zákazníka na výchozí URL okamžitě přesměrujete podle IP adresy nebo jazyka prohlížeče, robot se nemusí ke všem verzím dostat. Google doporučuje samostatné adresy a viditelný přepínač jazyka, aby si člověk mohl volbu změnit.
HTML, HTTP hlavička, nebo sitemap?
Google podporuje tři rovnocenné způsoby: značky v HTML, HTTP hlavičku a XML sitemapu. Nemusíte je kombinovat. Pro menší e-shop bývá nejčitelnější automaticky generovaná HTML hlavička. U velkého katalogu může být praktičtější centrálně generovaná sitemap, pokud platforma umí spolehlivě udržovat páry produktů.
Vyberte jeden zdroj, který dokážete dlouhodobě aktualizovat. Ruční správa stejné mapy ve třech místech zvyšuje riziko, že si údaje začnou odporovat. O správné indexovatelné struktuře pomůže rozhodnout také návod k filtrům, stránkování a canonical URL.
Postup nasazení v osmi krocích
- Vytvořte mapu odpovídajících URL. Párujte stejný produkt, kategorii nebo článek napříč jazyky podle stabilního ID, ne podle podobnosti názvu.
- Ověřte, že každá URL smí do indexu. Musí vracet 200, nesmí mít
noindexa nemá přesměrovávat jinam. - Nastavte self-canonical. Každá samostatně užitečná jazyková stránka odkazuje canonical sama na sebe.
- Vygenerujte stejnou hreflang sadu. Uveďte všechny existující alternativy a na každé stránce také odkaz na ni samotnou.
- Použijte platné kódy. Začněte jazykem; region přidejte pouze tehdy, když opravdu rozlišujete trhy stejného jazyka.
- Zvolte smysluplný x-default. Použijte rozcestník nebo skutečně výchozí verzi, ne náhodnou produktovou URL.
- Propojte mutace viditelnými odkazy. Přepínač jazyka musí vést na odpovídající stránku a být použitelný i bez automatického přesměrování.
- Otestujte vzorek před plošným nasazením. Začněte jednou kategorií, třemi produkty a jedním článkem ve všech jazycích.
Pozor na podobné regionální verze stejného jazyka
Nejtěžší situace vzniká u téměř stejných stránek pro stejný jazyk, například němčina pro Německo a Rakousko. Pokud mají odlišné ceny, dopravu, dostupnost nebo obchodní podmínky a mají se zobrazovat samostatně, dává obvykle smysl self-canonical a hreflangde-DE a de-AT.
Jestliže jsou stránky skutečně duplicitní a do indexu má jen jedna, vyberte preferovaný canonical ve stejném jazyce. Google současně doporučuje, aby hreflang odkazy vedly na canonical URL. Než takové sloučení provedete plošně, ověřte několik URL pomocí kontroly URL v Google Search Console.
Pokud se regionální verze mají zobrazovat i v produktových výsledcích, navazuje na toto SEO nastavení také správná kombinace cílové země, jazyka, měny a dopravy. Projděte si praktický návod k Merchant Centeru pro zahraniční e-shop.
Audit jazykových mutací za 30 minut
Vyberte jednu kategorii, jeden dostupný produkt a jeden článek. U každého otevřete českou, slovenskou a další používanou verzi. Potom projděte tento seznam:
- Každá stránka vrací 200 a není blokovaná pro indexaci.
- Canonical míří na finální HTTPS URL ve stejném jazyce.
- Každá samostatně indexovatelná verze používá self-canonical.
- Hreflang sada obsahuje samu stránku i všechny existující protějšky.
- Stejná sada je přítomná na všech vzájemně propojených verzích.
- Kódy jazyka a regionu jsou platné a adresy jsou absolutní.
- Žádný hreflang nevede na přesměrování, chybu 404 nebo noindex URL.
- Přepínač jazyka vede na odpovídající produkt, ne pouze na domovskou stránku.
- Interní odkazy v dané mutaci používají její vlastní canonical URL.
- Stejný vzorek ověříte po nasazení v Google Search Console.
Pokud už interní odkazy vedou přes přesměrování nebo mezi jazyky, opravte nejdřív navigaci a šablony. Pomůže vám praktický audit interních odkazů.
Proč se vyplatí kontrolovat šablonu, ne jen jednu URL
Ahrefs v roce 2023 analyzoval 374 756 domén s hreflangem a u 67 % našel alespoň jeden problém. Mezi častými chybami byly chybějící návratové odkazy, hreflang vedoucí na necanonical URL a nesprávné kódy. Nejde o odhad pro každý e-shop, ale o užitečné varování: u generovaných značek je důležitější pravidlo šablony než jedna ručně opravená stránka.
Nejčastější chyby
- Slovenská a německá stránka mají canonical na českou verzi.
- Česká stránka odkazuje na slovenskou, ale slovenská neodkazuje zpět.
- Sada neobsahuje odkaz stránky na ni samotnou.
- Adresy jsou relativní nebo obsahují starou doménu či HTTP.
- Hreflang vede přes přesměrování, na 404, noindex nebo jinou canonical URL.
- Používá se kód země bez jazyka, například
CZ. - Hlavní obsah zůstal česky a přeložilo se pouze menu a tlačítka.
- Návštěvník je nuceně přesměrován a nemůže si jazyk ručně změnit.
- Po smazání produktu se opraví jen jedna stránka celé jazykové skupiny.
Nejčastější otázky
Zvýší hreflang pozice ve vyhledávání?
Není to nástroj na přímé zvýšení pozic. Pomáhá Googlu nabídnout správnou jazykovou nebo regionální verzi a spojit související stránky. Výsledek stále závisí na kvalitě obsahu, technické dostupnosti a dalších signálech.
Stačí nastavit atribut lang v HTML?
Ne. Atribut lang je užitečný pro přístupnost a prohlížeče, ale Google uvádí, že jazyk stránky určuje hlavně podle viditelného obsahu. Vztah mezi alternativami sděluje hreflang samostatně.
Je x-default povinný?
Není. Je však užitečný pro jazykový rozcestník nebo jasně zvolenou výchozí verzi pro ostatní uživatele. Pokud žádnou takovou URL nemáte, nevymýšlejte ji jen kvůli značce.
Musí mít hreflang každý produkt?
Pouze produkt, který má skutečný odpovídající protějšek v jiné mutaci. Když se sortiment mezi zeměmi liší, je lepší odkaz vynechat než propojit dva nesouvisející produkty.
