Modul 3 · 3.6
Flerspråklige nettsteder og hreflang
Modul 3: Den tekniske grunnmuren på en side · Lesetid: 12 minutter
Læringsmål: Etter denne leksjonen kan du sette opp hreflang riktig for et nettsted på flere språk eller for flere land, og sjekke om henvisningene er gjensidige.
Nøkkelbegreper: språkversjon, hreflang, språkkode (ISO 639-1), landkode (ISO 3166-1 alpha-2), skriftkode (ISO 15924), x-default, gjensidighet (henvisning tilbake), henvisning til seg selv, HTML, HTTP-header eller nettstedskart, egne adresser per språk, ingen automatisk videresending etter språk, lang-attributt
Problemet: hvilken versjon skal vises?
Bloemenatelier Lotte vokser. Det kommer en engelsk versjon av nettstedet for turister og utlendinger som bor i området, og en tysk for kunder rett over grensen. Den samme siden med brudebuketter finnes nå i tre utgaver:
https://www.example.com/bruidsboeketten (nederlandsk)
https://www.example.com/en/bridal-bouquets (engelsk)
https://www.example.com/de/brautstraeusse (tysk)En søkemotor må for hvert søk velge hvilken av de tre den skal vise. Noen i Köln som søker på tysk, skal få den tyske versjonen, ikke den nederlandske. Med hreflang forteller du søkemotoren hvilke sider som er språkversjoner av hverandre, og hvilket språk eller land hver versjon er ment for.
hreflang er ikke et rangeringstriks. Det sørger bare for at riktig versjon vises på riktig sted. Det er heller ikke språkgjenkjenning: Google skriver at den ikke bruker hreflang eller lang-attributtet i HTML til å avgjøre hvilket språk en side har. Det finner Google ut selv, ut fra teksten. Sett likevel lang-attributtet (<html lang="nl">) riktig, for nettlesere, oversettelsesprogrammer og skjermlesere.
Først grunnlaget: egne adresser
Google anbefaler en egen adresse per språkversjon, og fraråder å bytte språk med informasjonskapsler eller nettleserinnstillinger på samme adresse. Grunnen er praktisk: Googlebot gjennomsøker som regel fra USA. Endrer innholdet på én adresse seg ut fra hvem som ser på, ser Googlebot kanskje bare én versjon.
Av samme grunn: ikke send besøkende automatisk videre til en annen språkversjon ut fra språk eller sted. Det fraråder Google uttrykkelig. En nederlender på ferie i Tyskland vil ha det nederlandske nettstedet. Sett heller et tydelig språkvalg på siden, og la alle nå alle versjonene.
Bruker du land i stedet for språk, med egne domener som example.de og example.nl, gjelder det samme. Versjonene trenger ikke ligge på samme domene.
Slik ser hreflang ut
I <head> på hver språkversjon står det samme settet med linjer:
<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">Fire regler du må kunne:
- Hver versjon nevner seg selv og alle de andre. Den engelske siden har altså nøyaktig de samme fire linjene, også linjen for
ensom peker til seg selv. - Henvisningene må være gjensidige. Peker den nederlandske siden til den tyske, må den tyske peke tilbake til den nederlandske. Google sier: Hvis to sider ikke begge peker til hverandre, blir henvisningene ignorert. Det er den vanligste feilen, og derfor sjekker oppgaven i denne leksjonen nettopp dette.
- Fullstendige adresser. Med
https://. En sti som/en/bridal-bouquetseller//www.example.com/en/...teller ikke. - I en ryddig
<head>. Linjene står i<head>i HTML-koden. Bryter noe av tidligere i head, for eksempel en løs<img>eller<div>som ikke hører hjemme der, kan en søkemotor oppfatte head som avsluttet og gå glipp av resten.
Kodene
Verdien i hreflang er en språkkode, eventuelt med en landkode bak:
| Kode | Betydning |
|---|---|
nl | Nederlandsk, for alle som snakker nederlandsk |
nl-BE | Nederlandsk for Belgia |
de-AT | Tysk for Østerrike |
en-GB | Engelsk for Storbritannia |
zh-Hant | Kinesisk med tradisjonell skrift (skriftkode ISO 15924) |
x-default | Reservesiden: for alle som ingen av de andre versjonene passer for |
Språkkoden kommer fra ISO 639-1 (to bokstaver), landkoden fra ISO 3166-1 alpha-2. Store eller små bokstaver spiller ingen rolle, men vanlig praksis er små bokstaver for språk og store for land. Tre fallgruver:
- Bare et land går ikke.
hreflang="be"betyr hviterussisk (språkkodenbe), ikke Belgia. Et land står alltid bak et språk:nl-BEellerfr-BE. en-UKfinnes ikke. Landkoden for Storbritannia erGB. Google skriver at koder somEU,UNellerUKikke har noen effekt.- Bruk land bare når versjonene faktisk er forskjellige (andre priser, valuta, levering, rettskriving). Har du én tysk versjon for alle, bruker du bare
de.
x-default
x-default er valgfritt. Med den peker du ut siden for besøkende som ingen av versjonene dine passer for, for eksempel noen som snakker fransk. Ofte er det hovedspråket ditt eller en side der den besøkende selv velger språk.
Tre måter, velg én
Google kjenner tre likeverdige måter å oppgi hreflang på:
- I HTML-koden, med
<link>-linjer i head, som ovenfor. Det mest brukte. Som HTTP-headeren
Link, praktisk for filer uten HTML, som en pdf:Link: <https://www.example.com/en/price-list.pdf>; rel="alternate"; hreflang="en"- I nettstedskartet, med
xhtml:link-linjer per<url>. Praktisk for store nettsteder, fordi sidene da ikke blir tyngre.
Du trenger ikke kombinere dem. Bruker du flere, må de si nøyaktig det samme.
hreflang og canonical sammen
hreflang og canonical (leksjon 3.5) virker sammen, men ikke bland dem:
- Hver språkversjon har en canonical til seg selv. Den engelske siden er ikke en kopi av den nederlandske, så den peker ikke til den nederlandske som kanonisk adresse. Gjør du det likevel, sier du «den engelske siden finnes egentlig ikke», og da faller den ut av indeksen.
- Adressene i hreflang er de kanoniske adressene til versjonene. Peker hreflang til en adresse som videresender, gir 404, har noindex eller har en canonical til et annet sted, brytes gruppen.
Når Google bestemmer den kanoniske adressen, foretrekker den adresser som er del av en hreflang-gruppe. En ryddig gruppe hjelper altså også kanoniseringen din.
I praksis: la systemet gjøre det
Å vedlikeholde hreflang for hånd er lett å gjøre feil: Med ti språk og hundre sider blir det tusen linjer som alle må stemme. La nettstedssystemet ditt gjøre det. AI Builder fra WebOké setter på et flerspråklig nettsted hreflang-henvisninger på hver side til den samme siden på de andre språkene, pluss en x-default til hovedspråket, og holder bevisst en side uten oversatt motpart utenfor gruppen. I WordPress gjør flerspråklige tillegg det samme. Hos andre nettstedsbyggere finner du det under navn som «språk» eller «internasjonalt». Sjekk deretter selv at henvisningene stemmer begge veier. Det gjør oppgaven.
Oppsummering
- hreflang forteller hvilke sider som er språk- eller landversjoner av hverandre. Det gjenkjenner ikke språk og er ikke et rangeringstriks.
- Hver versjon har sin egen adresse, og det skal ikke være automatisk videresending etter språk eller sted.
- Hver versjon nevner seg selv og alle de andre, med fullstendige adresser, og hver henvisning må komme tilbake. Ellers ignorerer Google den.
- Koder: språk fra ISO 639-1, eventuelt med land fra ISO 3166-1 alpha-2 (
en-GB, ikkeen-UK);x-defaultfor resten. - Hver versjon har en canonical til seg selv; hreflang peker bare til kanoniske adresser som gir 200.
Quiz
Oppgave
Oppgave A3.6: Er hreflang-henvisningene dine gjensidige? Skriv inn adressen til en side som finnes på flere språk. Programmet samler hreflang-henvisningene fra head og Link-headeren, sjekker kodene og henvisningen til seg selv, henter hver av de andre språkversjonene og ser om de peker tilbake, gir 200, ikke har noindex og har en canonical til seg selv. Har du ikke et eget flerspråklig nettsted? Bruk https://european-union.europa.eu/index_nl.
Les mer
- Google Search Central, Fortell Google om lokaliserte versjoner av siden din: https://developers.google.com/search/docs/specialty/international/localized-versions
- Google Search Central, Administrer flerspråklige og internasjonale nettsteder: https://developers.google.com/search/docs/specialty/international/managing-multi-regional-sites
- Google Search Central, Slå sammen dupliserte nettadresser: https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls
- ISO 639-språkkoder (Library of Congress): https://www.loc.gov/standards/iso639-2/php/code_list.php
