Modul 3 · 3.6
Večjezična spletna mesta in hreflang
Modul 3: Tehnična osnova strani · Čas branja: 12 min
Učni cilj: Po tej lekciji boste znali pravilno nastaviti hreflang za spletno mesto v več jezikih ali za več držav in preveriti, ali so povezave vzajemne.
Ključni pojmi: jezikovna različica, hreflang, jezikovna koda (ISO 639-1), koda države (ISO 3166-1 alpha-2), koda pisave (ISO 15924), x-default, vzajemnost (povratna povezava), povezava na samo sebe, HTML, glava HTTP ali zemljevid spletnega mesta, ločeni naslovi za vsak jezik, brez samodejne preusmeritve glede na jezik, atribut lang
Težava: katero različico prikazati?
Bloemenatelier Lotte raste. Spletno mesto dobi angleško različico za turiste in tujce, ki živijo na Nizozemskem, ter nemško za stranke tik čez mejo. Ista stran s poročnimi šopki zdaj obstaja trikrat:
https://www.example.com/bruidsboeketten (nizozemščina)
https://www.example.com/en/bridal-bouquets (angleščina)
https://www.example.com/de/brautstraeusse (nemščina)Iskalnik mora pri vsaki poizvedbi izbrati, katero od treh bo prikazal. Nekdo v Kölnu, ki išče v nemščini, mora dobiti nemško različico, ne nizozemske. S hreflang iskalniku poveste, katere strani so jezikovne različice druga druge in za kateri jezik ali katero državo je namenjena posamezna različica.
hreflang ni trik za boljšo uvrstitev. Poskrbi le, da se prava različica pojavi na pravem mestu. Prav tako ne prepoznava jezika: Google piše, da hreflang in atributa lang v HTML ne uporablja za določanje jezika strani; to stori sam, na podlagi besedila. Atribut lang (<html lang="nl">) vseeno nastavite pravilno, zaradi brskalnikov, prevajalskih programov in bralnikov zaslona.
Najprej osnova: ločeni naslovi
Google priporoča lasten naslov za vsako jezikovno različico in odsvetuje menjavo jezika s piškotki ali nastavitvami brskalnika na istem naslovu. Razlog je praktičen: Googlebot večinoma pregleduje splet iz Združenih držav. Če se vsebina na enem naslovu spreminja glede na to, kdo jo gleda, Googlebot morda vidi le eno različico.
Iz istega razloga obiskovalcev ne preusmerjajte samodejno na drugo jezikovno različico glede na njihov jezik ali lokacijo. Google to izrecno odsvetuje. Nizozemec na počitnicah v Nemčiji želi nizozemsko spletno mesto; raje na stran postavite jasno izbiro jezika in vsem omogočite dostop do vseh različic.
Če namesto jezikov uporabljate države, z ločenimi domenami, kot sta example.de in example.nl, velja enako. Ni nujno, da so različice na isti domeni.
Kako je videti hreflang
V <head> vsake jezikovne različice je isti nabor vrstic:
<link rel="alternate" hreflang="nl" href="https://www.example.com/bruidsboeketten">
<link rel="alternate" hreflang="en" href="https://www.example.com/en/bridal-bouquets">
<link rel="alternate" hreflang="de" href="https://www.example.com/de/brautstraeusse">
<link rel="alternate" hreflang="x-default" href="https://www.example.com/bruidsboeketten">Štiri pravila, ki jih morate poznati:
- Vsaka različica navede sebe in vse druge. Angleška stran ima torej natanko iste štiri vrstice, vključno z vrstico za
en, ki kaže nanjo samo. - Povezave morajo biti vzajemne. Če nizozemska stran kaže na nemško, mora nemška kazati nazaj na nizozemsko. Google pravi: če dve strani ne kažeta druga na drugo, se povezave prezrejo. To je najpogostejša napaka, zato jo preverja naloga te lekcije.
- Polni naslovi. Z
https://. Pot, kot je/en/bridal-bouquetsali//www.example.com/en/..., ne šteje. - V urejenem
<head>. Vrstice so v<head>HTML-ja. Če se glava prej prekine, na primer zaradi samostojnega<img>ali<div>, ki tja ne sodi, lahko iskalnik glavo šteje za zaključeno in preostanek spregleda.
Kode
Vrednost hreflang je jezikovna koda, po potrebi z kodo države za njo:
| Koda | Pomen |
|---|---|
nl | Nizozemščina, za vse, ki govorijo nizozemsko |
nl-BE | Nizozemščina za Belgijo |
de-AT | Nemščina za Avstrijo |
en-GB | Angleščina za Združeno kraljestvo |
zh-Hant | Kitajščina v tradicionalni pisavi (koda pisave ISO 15924) |
x-default | Nadomestna stran: za vse, ki jim ne ustreza nobena druga različica |
Jezikovna koda izhaja iz ISO 639-1 (dve črki), koda države iz ISO 3166-1 alpha-2. Velike in male črke niso pomembne, običajno pa se jezik piše z malimi, država z velikimi črkami. Tri pasti:
- Samo država ne gre.
hreflang="be"pomeni beloruščino (jezikovna kodabe), ne Belgije. Država vedno stoji za jezikom:nl-BEalifr-BE. en-UKne obstaja. Koda države za Združeno kraljestvo jeGB. Google piše, da kode, kot soEU,UNaliUK, nimajo učinka.- Državo uporabite le, če se različice res razlikujejo (druge cene, valuta, dostava, črkovanje). Če imate eno nemško različico za vse, preprosto uporabite
de.
x-default
x-default ni obvezen. Z njim določite stran za obiskovalce, ki jim ne ustreza nobena od Vaših različic, na primer nekoga, ki govori francosko. Pogosto je to Vaš glavni jezik ali stran, na kateri obiskovalec sam izbere jezik.
Trije načini, izberite enega
Google pozna tri enakovredne načine za navedbo hreflang:
- V HTML-ju, z vrsticami
<link>v glavi, kot zgoraj. Najpogosteje uporabljen način. Kot glava HTTP
Link, priročno za datoteke brez HTML-ja, na primer pdf:Link: <https://www.example.com/en/price-list.pdf>; rel="alternate"; hreflang="en"- V zemljevidu spletnega mesta, z vrsticami
xhtml:linkza vsak<url>. Priročno za velika spletna mesta, ker strani tako ne postanejo težje.
Ni jih treba kombinirati. Če jih uporabljate več, morajo navajati natanko isto.
hreflang in canonical skupaj
hreflang in canonical (lekcija 3.5) delujeta skupaj, vendar ju ne zamenjujte:
- Vsaka jezikovna različica ima canonical na samo sebe. Angleška stran ni kopija nizozemske, zato ne kaže na nizozemsko kot kanonični naslov. Če to storite, sporočite "angleška stran pravzaprav ne obstaja", in izpade iz indeksa.
- Naslovi v hreflang so kanonični naslovi različic. Če hreflang kaže na naslov, ki preusmerja, vrne 404, ima noindex ali ima canonical drugam, se skupina zlomi.
Google pri določanju kanoničnega naslova raje izbere naslove, ki so del skupine hreflang. Urejena skupina torej pomaga tudi pri kanonikalizaciji.
V praksi: naj to opravi sistem
Ročno vzdrževanje hreflang je nagnjeno k napakam: pri desetih jezikih in sto straneh je to tisoč vrstic, ki morajo biti vse pravilne. Naj to opravi Vaš sistem za spletno mesto. AI Builder družbe WebOké pri večjezičnem spletnem mestu na vsako stran doda povezave hreflang na isto stran v drugih jezikih ter x-default na glavni jezik, stran brez prevedenega para pa namenoma izpusti iz skupine. V WordPressu enako opravijo večjezični vtičniki. Pri drugih graditeljih spletnih mest to najdete pod imeni, kot sta "jeziki" ali "mednarodno". Nato sami preverite, ali so povezave v obe smeri pravilne; to stori naloga.
Povzetek
- hreflang pove, katere strani so jezikovne ali državne različice druga druge; ne prepoznava jezika in ni trik za uvrstitev.
- Vsaka različica ima lasten naslov, brez samodejne preusmeritve glede na jezik ali lokacijo.
- Vsaka različica navede sebe in vse druge, s polnimi naslovi, in vsaka povezava mora imeti povratno povezavo; sicer jo Google prezre.
- Kode: jezik iz ISO 639-1, po potrebi z državo iz ISO 3166-1 alpha-2 (
en-GB, neen-UK);x-defaultza vse ostalo. - Vsaka različica ima canonical na samo sebe; hreflang kaže le na kanonične naslove, ki vrnejo 200.
Kviz
Naloga
Naloga A3.6: Ali so Vaše povezave hreflang vzajemne? Vnesite naslov strani, ki obstaja v več jezikih. Program zbere povezave hreflang iz glave in iz glave HTTP Link, preveri kode in povezavo na samo sebe, prenese vsako drugo jezikovno različico in preveri, ali kaže nazaj, vrne 200, nima noindex in ima canonical na samo sebe. Nimate lastnega večjezičnega spletnega mesta? Uporabite https://european-union.europa.eu/index_nl.
Za nadaljnje branje
- Google Search Central, Obveščanje Googla o lokaliziranih različicah strani: https://developers.google.com/search/docs/specialty/international/localized-versions
- Google Search Central, Upravljanje večjezičnih in mednarodnih spletnih mest: https://developers.google.com/search/docs/specialty/international/managing-multi-regional-sites
- Google Search Central, Združevanje podvojenih URL-jev: https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
- Jezikovne kode ISO 639 (Library of Congress): https://www.loc.gov/standards/iso639-2/php/code_list.php
