Tartalomkészítés.hu

Hreflang: teljes útmutató

Nemzetközi SEO

A hreflang egy jelzés, amellyel megmondod a keresőknek, hogy egy oldalnak milyen nyelvi vagy regionális változatai vannak, és melyiket kinek mutassák. Három módon adhatod meg: HTML link elemmel, HTTP-fejlécben vagy XML sitemapben. Működéséhez kölcsönös hivatkozás, önhivatkozás, helyes ISO-kódok és indexelhető, kanonikus URL-ek kellenek.

Alapfogalmak

A hreflang attribútum azt írja le, hogy ugyanannak a tartalomnak létezik más nyelvű vagy más országnak szánt megfelelője. Nem rangsorolási tényező abban az értelemben, hogy jobb helyezést hozna. A szerepe az, hogy a már rangsoroló oldalak közül a felhasználó nyelvének és helyének megfelelő URL jelenjen meg a találati listában. Ha egy osztrák felhasználó a német nyelvű termékoldaladra keres, a hreflang segít, hogy a /de-at/ változatot lássa a /de-de/ helyett.

Fontos különbséget tenni nyelv és régió között. A nyelv kötelező eleme a kódnak, a régió opcionális. Egy hu kód minden magyarul beszélő felhasználónak szól, országtól függetlenül. A hu-HU már konkrétan a Magyarországon tartózkodó, magyar nyelvű közönséget célozza. Régiót önmagában nem adhatsz meg, a HU önállóan érvénytelen.

A kódok felépítése

A nyelvkód az ISO 639-1 szabvány kétbetűs kódja (hu, de, en, sk), a régiókód az ISO 3166-1 alpha-2 szabvány szerinti országkód (HU, AT, GB, RO). A kettőt kötőjel választja el. A kis- és nagybetű a feldolgozásnál nem számít, de a konvenció a kisbetűs nyelv és nagybetűs ország.

KódJelentésÉrvényes?
huMagyar nyelv, bármely országIgen
hu-ROMagyar nyelv, RomániábanIgen
en-GBAngol nyelv, Egyesült KirályságbanIgen
en-UKAz UK nem ISO országkódNem
HUCsak országkódNem
x-defaultAlapértelmezett, egyik változat sem illikIgen

Önhivatkozás és kölcsönösség

Minden változatnak fel kell sorolnia önmagát és az összes többi változatot. Ha az A oldal B-re mutat, B-nek vissza kell mutatnia A-ra. Ezt nevezzük visszahivatkozásnak (return link). Ha a visszahivatkozás hiányzik, a kereső figyelmen kívül hagyhatja a párost, mert nem tudja eldönteni, hogy a két oldal tulajdonosa valóban összetartozónak szánja-e őket.

Az x-default szerepe

Az x-default azt az URL-t jelöli, amelyet akkor kell mutatni, ha a felhasználó nyelve vagy helye egyik megadott változathoz sem illik. Tipikusan egy nyelvválasztó oldal vagy a nemzetközi angol változat. Nem kötelező, de nagyon ajánlott, ha nem fedsz le minden piacot. A tágabb stratégiai keretet a Nemzetközi SEO: teljes útmutató foglalja össze.

Hreflang és canonical viszonya

A canonical azt mondja meg, melyik URL az elsődleges egy duplikált csoporton belül. A hreflang azt, hogy a különböző nyelvű csoportok hogyan kapcsolódnak. A két jelzésnek összhangban kell lennie: minden változat önmagára kanonizáljon, és a hreflang mindig kanonikus URL-re mutasson. Ha a német oldal a canonicalban az angolra mutat, azzal azt üzened, hogy a német oldal nem önálló, így a hreflang-jelzés ellentmondásba kerül.

Hogyan működik?

A keresőmotor feltérképezéskor összegyűjti a hreflang-jelzéseket, és ezekből úgynevezett klasztert épít: egy olyan URL-csoportot, amelynek tagjai ugyanannak a tartalomnak a nyelvi változatai. Amikor a klaszter bármely tagja rangsorol egy lekérdezésre, a kereső megnézi a felhasználó nyelvi beállítását és helyét, majd a klaszterből a legjobban illő URL-t teszi a helyére.

Ebből következik egy gyakran félreértett pont: a hreflang nem hozza be az oldalt az indexbe, és nem ad neki rangsorolási erőt. Ha a szlovák oldalad nincs indexelve, mert gyenge vagy noindex van rajta, a hreflang nem segít. Csak a meglévő, indexelt változatok közötti cserét irányítja.

A feldolgozás lépései

  1. A robot letölti az oldalt, és kiolvassa a hreflang-jelzéseket (HTML-ből, fejlécből vagy sitemapből).
  2. Ellenőrzi, hogy a hivatkozott URL-ek elérhetők, indexelhetők és kanonikusak-e.
  3. Megnézi, hogy a hivatkozott oldalak visszamutatnak-e.
  4. Az érvényes, kölcsönös párokból klasztert épít.
  5. Kereséskor a felhasználó nyelve és helye alapján kiválasztja a klaszter megfelelő tagját.

Jelzés, nem utasítás

A Google a hreflangot jelzésként kezeli. Ha más jelek erősebben mást mutatnak (például a tartalom valójában nem az adott nyelven íródott, vagy a canonical ellentmond), előfordulhat, hogy figyelmen kívül hagyja. Ezért a hreflang mellett a tartalom nyelvének, a pénznemnek, a szállítási információknak és a belső linkelésnek is egy irányba kell mutatnia.

Kidolgozott példa: négy piac

Vegyünk egy szemléltető webáruházat, amely Magyarországon, Romániában (magyar és román nyelven) és Ausztriában árul. A termékoldal változatai:

  • https://pelda.hu/termek/ (hu-HU)
  • https://pelda.hu/ro-hu/termek/ (hu-RO, magyarul, lejben)
  • https://pelda.hu/ro/produs/ (ro-RO)
  • https://pelda.hu/at/produkt/ (de-AT)
  • https://pelda.hu/en/product/ (x-default)

Mind az öt oldal fejlécében ugyanaz az öt sor szerepel, köztük az önhivatkozás is. Egy kolozsvári felhasználó, akinek a böngészője magyarra van állítva, a hu-RO változatot kapja, lejes árakkal. Egy svájci német felhasználó nem illik egyik kódra sem pontosan; a Google ilyenkor a nyelvi egyezést részesítheti előnyben, így jó eséllyel a de-AT változatot látja. Egy brazil felhasználó az x-default angol oldalra kerül.

Nyelvi tartalék logika

Ha csak országos kódokat adsz meg (de-AT, de-DE), egy svájci felhasználónál nincs pontos egyezés. Érdemes ezért egy nyelvi szintű, általános kódot is megadni (de), amely valamelyik német változatra mutat. Így a nem lefedett német nyelvű országok is kiszámítható oldalt kapnak, nem a kereső találgatására vagy az x-defaultra bízod őket.

Fő módszerek

Háromféleképpen adhatod meg a hreflangot. Hatásukat tekintve egyenértékűek, a választás a technikai környezeteden és az oldalak számán múlik. Egy dolgot kerülj: ugyanazt a klasztert ne add meg párhuzamosan több módszerrel, mert ha eltérnek egymástól, nehezen debugolható ellentmondás keletkezik.

A legelterjedtebb megoldás. Minden oldal head szekciójába bekerül egy-egy link elem rel="alternate" és hreflang attribútummal, abszolút URL-lel. A mi példánkban ez öt sort jelent oldalanként. Előnye, hogy átlátható, a forráskódban azonnal ellenőrizhető. Hátránya, hogy sok nyelvnél (például 30 piac) minden oldal head része jelentősen megnő, és a sablonhibák minden oldalon egyszerre jelentkeznek.

HTTP-fejléc

Nem HTML fájloknál, például PDF-eknél ez az egyetlen járható út. A szerver a válasz Link fejlécében küldi a változatokat, vesszővel elválasztva. Előnye, hogy nem igényli a HTML módosítását. Hátránya, hogy böngészőből nehezebb ellenőrizni, fejlécvizsgáló eszköz vagy parancssor kell hozzá, és a CDN vagy cache réteg könnyen elnyelheti a fejlécet.

XML sitemap

Az oldaltérképben minden url elemen belül xhtml:link elemekkel sorolod fel a változatokat. Ehhez a sitemap gyökérelemében deklarálni kell az xhtml névteret. Nagy, sok nyelvű oldalaknál ez a legjobban skálázható: a hreflang egy helyen, generált fájlban él, nem terheli az oldalakat. Hátránya, hogy a robot csak a sitemap feldolgozásakor látja, és a hibák rejtve maradnak, ha senki nem validálja a fájlt.

Összehasonlítás

SzempontHTMLHTTP-fejlécXML sitemap
Nem HTML fájlokNemIgenIgen
EllenőrizhetőségKönnyűKözepesKözepes
Skálázás sok nyelvreGyengeGyengeJó
Fejlesztői igénySablonszintSzerverszintGenerálás
OldalsúlyNőNem változikNem változik

Döntési szabály

  • Ha 5 vagy kevesebb nyelvi változatod van, és a CMS sablonja kezelhető: HTML.
  • Ha PDF-et vagy más nem HTML erőforrást is párosítanál: HTTP-fejléc ezekre.
  • Ha sok piacod és nagy oldalszámod van, vagy a sablonhoz nehéz hozzányúlni: XML sitemap.
  • Ha vegyes a helyzet, módszert URL-típusonként válassz, de egy klaszteren belül egyet használj.

A határeset a részleges fordítás: ha a blogod csak magyarul létezik, de a termékoldalaid öt nyelven, a blogcikkekre ne tegyél hreflangot, vagy csak önhivatkozást. Nem létező megfelelőt soha ne jelölj meg, és ne mutass a másik nyelv főoldalára helyettesítésként. A nyelvi verziók tartalmi és szerkezeti tervezéséről a Többnyelvű SEO: teljes útmutató ír részletesebben.

Gyakori hibák

A hreflang-implementációk jelentős része hibás valamilyen ponton, főleg nagyobb oldalaknál, ahol sablonok és fordítási folyamatok generálják a jelzéseket. A legtöbb hiba nem szintaktikai, hanem logikai: a kód formailag rendben van, csak rossz URL-re mutat vagy nincs párja.

Hiányzó visszahivatkozás

A leggyakoribb probléma. Tipikusan akkor fordul elő, ha egy új nyelvet kiadsz, és csak az új oldalakra kerül fel a hreflang, a régiekre nem. Ilyenkor a régi változatok nem ismerik el az újat, és a párok érvénytelenek lehetnek. A javítás: a hreflang-listát egy központi adatforrásból (fordítási táblából) generáld, ne oldalanként kézzel.

Hibás kódok

Az en-UK, a jp a ja helyett, vagy a nyelv és ország felcserélése (HU-hu helyett például us-en) mind érvénytelen. Gyakori a cz a cs helyett a cseh nyelvnél, mert a cz az országkód. Hasonlóan a görögnél el a helyes nyelvkód, nem gr. Ezek csendben hibáznak, a kereső egyszerűen eldobja az adott sort.

Nem kanonikus vagy nem elérhető cél

A hreflang átirányított URL-re (301), 404-es oldalra, noindexelt vagy máshova kanonizált oldalra mutat. Gyakori ok a végpontosperjel-eltérés (/termek vs /termek/) vagy a http és https keveredése. A célnak mindig a végleges, 200-as státuszú, önmagára kanonizáló URL-nek kell lennie.

Automatikus átirányítás IP vagy nyelv alapján

Ha a szerver a látogató helye alapján kényszerítően átirányít, a robot (amely jellemzően amerikai IP-ről érkezik) soha nem látja a többi változatot. Ilyenkor a hreflang hiába van ott. A jobb megoldás egy nem tolakodó ajánló sáv ("Úgy tűnik, Romániából látogatsz, váltasz a lejes oldalra?"), amely a választást a felhasználóra hagyja.

Ellenpélda: azonos tartalom, különböző kód

Ha a de-DE és de-AT oldal tartalma betűre azonos, az nem hiba, a hreflang pont erre való. Hiba viszont, ha az "angol" oldal valójában magyar szöveget tartalmaz, mert a fordítás még nem készült el. A kereső felismerheti, hogy a tartalom nyelve nem egyezik a kóddal, és a jelzést ilyenkor gyengébben veheti figyelembe.

Gyakori tévhitek

  • "A hreflang javítja a rangsorolást." Nem, a meglévő helyezésen belül cseréli a változatot.
  • "A hreflang megoldja a duplikált tartalmat." Részben segít, mert jelzi, hogy a hasonló oldalak szándékos változatok, de rossz canonicallal együtt nem ment meg semmitől.
  • "Elég a főoldalra tenni." Nem, oldalszinten működik, minden megfelelő párosra külön kell.
  • "A lang attribútum ugyanezt csinálja." A html lang a böngészőnek és akadálymentesítési eszközöknek szól, a Google hreflang-kezelésében nem helyettesíti a hreflangot.

Mérés

A hreflang sikerét nem a forgalom puszta növekedésén méred, hanem azon, hogy a megfelelő piacon a megfelelő URL jelenik-e meg. A cél az illesztés: osztrák keresőknél a /at/ oldalak kapják a megjelenéseket, nem a /de/ oldalak. Ezt több forrásból kell összerakni.

Search Console ország- és oldalszűrés

A Teljesítmény jelentésben szűrj országra, majd nézd meg az Oldalak fület. Ha Ausztriában jelentős megjelenést kapnak a /de/ URL-ek, a hreflang nem működik megfelelően. Szemléltető példa: ha egy osztrák szűrésnél a kattintások 60 százaléka a német piacos oldalakra megy, ott hibát kell keresni; ha ez az arány a javítás után néhány hét alatt jelentősen csökken, a jelzés érvényesült. A konkrét számok oldalanként nagyon eltérnek, a trend a lényeg.

Feltérképező eszközök

Az asztali és felhőalapú SEO-crawlerek többsége tud hreflang-jelentést készíteni: hiányzó visszahivatkozások, nem 200-as célok, hibás kódok, hiányzó önhivatkozás. Futtasd minden nagyobb kiadás után, és mentsd el az eredményt, hogy összehasonlíthasd az előző állapottal.

URL-vizsgálat és élő teszt

A Search Console URL-vizsgálatánál láthatod, melyik URL-t választotta a Google kanonikusnak. Ha a hu-RO oldalnál a Google a hu-HU oldalt jelöli kanonikusnak, a két oldal túl hasonló lehet, vagy ellentmondásos jelzések vannak. Ilyenkor érdemes erősebben lokalizálni (pénznem, elérhetőség, helyi adatok).

Ellenőrzőlista

  1. Minden változat tartalmaz önhivatkozást.
  2. Minden pár kölcsönös.
  3. Minden kód érvényes ISO nyelv (és opcionálisan ország).
  4. Minden cél 200-as, indexelhető, önmagára kanonizál.
  5. Abszolút URL-ek, egységes protokoll és perjel.
  6. Van x-default, ha nem fedsz le minden piacot.
  7. Egy klaszter egy módszerrel van megadva.
  8. Nincs kényszerített IP-alapú átirányítás.
  9. A tartalom nyelve egyezik a kóddal.
  10. Országos szűrésnél a helyi URL-ek kapják a megjelenéseket.

Ütemezés

Új implementáció vagy jelentős javítás után ne várj azonnali változást. A feldolgozás a feltérképezés ütemétől függ, ami oldalanként eltér. Érdemes először egy héttel később ellenőrizni a crawlert, aztán néhány héttel később a Search Console országos bontását. Havi rendszerességű, kiadásokhoz kötött audit a leghatékonyabb.

Kapcsolódó részletes útmutatók

A hreflang a nemzetközi SEO egyik technikai pillére, de csak akkor működik jól, ha mögötte átgondolt piaci és nyelvi stratégia áll. Mielőtt kódot írsz, döntsd el, melyik piacokat célzod, milyen URL-struktúrával (alkönyvtár, aldomain vagy országos domain), és mennyire lokalizálod a tartalmat. Ezek a döntések határozzák meg, hány változatod lesz, és hogyan épül fel a klaszter.

Ha a struktúra megvan, a hreflang már inkább karbantartási feladat: központi forrásból generált lista, rendszeres crawl és országos bontású mérés. Az alábbi anyagok segítenek a tágabb kontextus felépítésében.

Ajánlott olvasnivaló

Merre tovább?

Ha most indulsz, a sorrend: stratégia, struktúra, tartalom, majd hreflang. Ha már van élő, többnyelvű oldalad, kezdd a fenti ellenőrzőlistával és egy teljes crawllal, mert a meglévő hibák javítása gyakran gyorsabban hoz eredményt, mint egy új nyelv bevezetése.

Csináltassuk meg helyetted

Ha ez sok, mi elvégezzük. Egy munkanapon belül konkrét ajánlatot kapsz.

Ajánlatot kérek