Wat is de taal van een webpagina? Google en andere zoekmachines kunnen dit vaak achterhalen door te kijken naar het topleveldomein (bijv. .nl of .de) of de content op de pagina. Toch kun je zoekmachines een handje helpen door een HTML lang-attribuut bovenin de broncode van een pagina te plakken én een hreflang-attribuut in de header te zetten.
Zo plaats je een HTML lang-attribuut
HTML lang is een HTML-attribuut dat aangeeft in welke taal een webpagina is. Ook geeft het attribuut soms aan welke geografische regio getarget wordt. Het is handig als je website dezelfde pagina in meerdere talen heeft, zodat zoekmachines de juiste versie kunnen tonen op basis van de locatie of voorkeurstaal van de gebruiker.
Iedere website opent met een HTML-tag, bijvoorbeeld:
<html>
Wil je een lang-attribuut toevoegen, dan pas je deze HTML-tag aan. In het Nederlands wordt het dan:
<html lang=”nl-NL”>
Hiermee geef je aan dat de content van de pagina in het Nederlands is én dat jij je richt op Nederlanders. Is jouw pagina bedoeld voor Vlaamse bezoekers, dan pas je de HTML lang als volgt aan:
<html lang=”nl-BE”>
Wil jij je niet richten op Vlaanderen of Nederland, maar juist op het volledig Nederlandstalig taalgebied? Dan kun je beter de volgende attribuut gebruiken:
<html lang=”nl”>
Let op: je kunt slechts één HTML lang-tag per pagina gebruiken.
Zo plaats je een hreflang-attribuut
Heb je een Nederlandse én een Vlaamse website en wil je voorkomen dat zoekmachines beide websites indexeren? Dan kan het zinvol zijn om meerdere hreflang-attributen te plaatsen. Een hreflang-attribuut plaats je tussen de <head>-tags in de broncode en ziet er zo uit:
<link rel=”alternate” href=”https://www.jouwsite.nl/” hreflang=”nl-NL”>
Zo heeft Coolblue webshops in meerdere landen. Op iedere pagina staan daarom meerdere hreflang-tags om zoekmachines te informeren welke versies zijn moeten indexeren. Hreflang-attributen volgen dezelfde volgorde als HTML lang-tags: eerst de taalcode, dan de landcode.
Zie hieronder hoe Coolblue dit oplost op de homepage:
<link rel=”alternate” href=”https://www.coolblue.nl/” hreflang=”nl-NL”>
<link rel=”alternate” href=”https://www.coolblue.nl/en” hreflang=”en-NL”>
<link rel=”alternate” href=”https://www.coolblue.be/nl” hreflang=”nl-BE”>
<link rel=”alternate” href=”https://www.coolblue.be/fr” hreflang=”fr-BE”>
<link rel=”alternate” href=”https://www.coolblue.be/en” hreflang=”en-BE”>
<link rel=”alternate” href=”https://www.coolblue.de/” hreflang=”de-DE”>
<link rel=”alternate” href=”https://www.coolblue.de/en” hreflang=”en-DE”>
Op de productpagina van de Nintendo Switch gebruikt Coolblue de volgende hreflang-attributen:
<link rel=”alternate” href=”https://www.coolblue.nl/product/886498/nintendo-switch-oled-blauw-rood.html” hreflang=”nl-nl”>
<link rel=”alternate” href=”https://www.coolblue.nl/en/product/886498/nintendo-switch-oled-blue-red.html” hreflang=”en-nl”>
<link rel=”alternate” href=”https://www.coolblue.be/nl/product/886498/nintendo-switch-oled-blauw-rood.html” hreflang=”nl-be”>
<link rel=”alternate” href=”https://www.coolblue.be/fr/produit/886498/nintendo-switch-oled-bleu-rouge.html” hreflang=”fr-be”>
<link rel=”alternate” href=”https://www.coolblue.be/en/product/886498/nintendo-switch-oled-blue-red.html” hreflang=”en-be”>
<link rel=”alternate” href=”https://www.coolblue.de/produkt/886498/nintendo-switch-oled-blau-rot.html” hreflang=”de-de”>
<link rel=”alternate” href=”https://www.coolblue.de/en/product/886498/nintendo-switch-oled-blue-red.html” hreflang=”en-de”>
Heb je een website in één taal? Dan plaats je maar één hreflang-attribuut. Bied je jouw content in meerdere talen en/of landen aan? Dan plaats je meerdere hreflang-attributen op één pagina. Gebruik het hreflang-attribuut van de huidige pagina en van alle alternatieve pagina’s.
Waarom is het goed om HTML lang en hreflang-attributen te gebruiken?
Het heeft allerlei voordelen om HTML lang en hreflang-attributen in de broncode van je webpagina’s te plakken:
- Het helpt zoekmachines de juiste taal van de webpagina te begrijpen. Dit verbetert de kwaliteit van de zoekresultaten, omdat zoekmachines resultaten kunnen tonen op basis van de taalvoorkeuren van de gebruiker. Toch zien we dat zoekmachines vaker kijken naar de hreflang-attributen dan naar de HTML lang-tags.
- Browserextensies en andere software, zoals vertaalhulpmiddelen, kunnen de lang-attributen gebruiken om informatie in de juiste taal weer te geven.
- Met lang-tags kun je de opmaak van de inhoud per taal variëren. Zo kun je bijvoorbeeld een specifiek lettertype instellen voor een bepaalde taal. Daarnaast kunnen gebruikersagents automatisch lettertypen selecteren op basis van de taal van het document.
- Schermlezers, spraaksynthesizers en braillevertalers gebruiken het lang-attribuut om uitvoer te genereren op basis van de tekst. In landen zoals het Verenigd Koninkrijk wordt het gebruik van correcte lang-tags afgedwongen volgens de W3C-richtlijnen voor webtoegankelijkheid.
Wat zijn alle HTML lang en hreflang-taalcodes en regiocodes?
Hieronder een overzicht van alle taalcodes en regiocodes. Je begint de HTML lang of hreflang met een taalcode. Dan volgt een middenstreepje. De regiocode plaats je erachter.
Ik begin met twee voorbeelden van HTML lang en hreflang-attributen voor een Canadese website in twee talen. De site https://mijndomein.ca richt zich op Canadse bezoekers die Frans spreken. De site https://mijndomein.ca/en richt zich op Canadese bezoekers die Engels spreken.
De HTML lang en hreflang-attributen op https://mijndomein.ca zijn:
<html lang=”fr-CA”>
<head>
<link rel=”alternate” href=”https://mijndomein.ca” hreflang=”fr-CA”>
<link rel=”alternate” href=”https://mijndomein.ca/en” hreflang=”en-CA”>
</head>
<body>
</body>
</html>
De HTML lang en hreflang-attributen op https://mijndomein.ca/en zijn:
<html lang=”en-CA”>
<head>
<link rel=”alternate” href=”https://mijndomein.ca/en” hreflang=”en-CA”>
<link rel=”alternate” href=”https://mijndomein.ca” hreflang=”fr-CA”>
</head>
<body>
</body>
</html>
Volgens mij is het principe duidelijk, toch? Dan gaan we snel door naar alle taalcodes en regiocodes!
Alle hreflang-taalcodes
|
Taal
|
Taalcode
|
|
Abchazisch
|
ab
|
|
Afrikaans
|
af
|
|
Albanees
|
sq
|
|
Arabisch
|
ar
|
|
Aragonees
|
an
|
|
Armeens
|
hy
|
|
Assamees
|
as
|
|
Azerbeidzjaans
|
az
|
|
Baskisch
|
eu
|
|
Bengaals
|
bn
|
|
Birmees
|
my
|
|
Bosnisch
|
bs
|
|
Bretons
|
br
|
|
Bulgaars
|
bg
|
|
Catalaans / Valenciaans
|
ca
|
|
Chinees (vereenvoudigd)
|
zh-hans
|
|
Cornisch
|
kw
|
|
Corsicaans
|
co
|
|
Deens
|
da
|
|
Duits
|
de
|
|
Engels
|
en
|
|
Esperanto
|
eo
|
|
Estisch
|
et
|
|
Faeröers
|
fo
|
|
Fijisch
|
fj
|
|
Fins
|
fi
|
|
Frans
|
fr
|
|
Gaelisch / Schots-Gaelisch
|
gd
|
|
Galicisch
|
gl
|
|
Georgisch
|
ka
|
|
Grieks
|
el
|
|
Haïtiaans; Haïtiaans Creools
|
ht
|
|
Hebreeuws
|
he
|
|
Hindi
|
hi
|
|
Hongaars
|
hu
|
|
IJslands
|
is
|
|
Iers
|
ga
|
|
Indonesisch
|
id
|
|
Italiaans
|
it
|
|
Japans
|
ja
|
|
Javaans
|
jv
|
|
Jiddisch
|
yi
|
|
Kerkslavisch
|
cu
|
|
Kirgizisch
|
ky
|
|
Koerdisch
|
ku
|
|
Kongo
|
kg
|
|
Koreaans
|
ko
|
|
Kroatisch
|
hr
|
|
Latijn
|
la
|
|
Lets
|
lv
|
|
Limburgs
|
li
|
|
Lingala
|
ln
|
|
Litouws
|
lt
|
|
Luxemburgs; Letzeburgs
|
lb
|
|
Macedonisch
|
mk
|
|
Malagassisch
|
mg
|
|
Maleis
|
ms
|
|
Maltees
|
mt
|
|
Manx
|
gv
|
|
Moldavisch
|
mo
|
|
Mongools
|
mn
|
|
Nederlands
|
nl
|
|
Nepalees
|
ne
|
|
Noord-Samisch
|
se
|
|
Noors
|
no
|
|
Noors (Bokmål)
|
nb
|
|
Noors (Nynorsk)
|
nn
|
|
Occitaans (na 1500); Provençaals
|
oc
|
|
Oekraïens
|
uk
|
|
Oezbeeks
|
uz
|
|
Perzisch
|
fa
|
|
Pools
|
pl
|
|
Portugees
|
pt
|
|
Reto-Romaans
|
rm
|
|
Roemeens
|
ro
|
|
Russisch
|
ru
|
|
Sardinisch
|
sc
|
|
Servisch
|
sr
|
|
Sloveens
|
sl
|
|
Slowaaks
|
sk
|
|
Somalisch
|
so
|
|
Spaans / Castiliaans
|
es
|
|
Swahili
|
sw
|
|
Tahitiaans
|
ty
|
|
Thais
|
th
|
|
Tibetaans
|
bo
|
|
Tsjechisch
|
cs
|
|
Tsjetsjeens
|
ce
|
|
Turkmeens
|
tk
|
|
Turks
|
tr
|
|
Urdu
|
ur
|
|
Vietnamees
|
vi
|
|
Volapük
|
vo
|
|
Welsh
|
cy
|
|
West-Fries
|
fy
|
|
Wit-Russisch
|
be
|
|
Zweeds
|
sv
|
Alle hreflang-regiocodes
|
Land
|
Landcode
|
|
Afghanistan
|
AF
|
|
Åland
|
AX
|
|
Albanië
|
AL
|
|
Algerije
|
DZ
|
|
Amerikaans-Samoa
|
AS
|
|
Andorra
|
AD
|
|
Angola
|
AO
|
|
Anguilla
|
AI
|
|
Antarctica
|
AQ
|
|
Antigua en Barbuda
|
AG
|
|
Argentinië
|
AR
|
|
Armenië
|
AM
|
|
Aruba
|
AW
|
|
Australië
|
AU
|
|
Azerbeidzjan
|
AZ
|
|
Bahama’s
|
BS
|
|
Bahrein
|
BH
|
|
Bangladesh
|
BD
|
|
Barbados
|
BB
|
|
België
|
BE
|
|
Belize
|
BZ
|
|
Benin
|
BJ
|
|
Bermuda
|
BM
|
|
Bhutan
|
BT
|
|
Bolivië
|
BO
|
|
Bonaire, Sint Eustatius en Saba
|
BQ
|
|
Bosnië en Herzegovina
|
BA
|
|
Botswana
|
BW
|
|
Bouvet
|
BV
|
|
Brazilië
|
BR
|
|
Brits Territorium in de Indische Oceaan
|
IO
|
|
Brunei Darussalam
|
BN
|
|
Bulgarije
|
BG
|
|
Burkina Faso
|
BF
|
|
Burundi
|
BI
|
|
Cambodja
|
KH
|
|
Canada
|
CA
|
|
Centraal-Afrikaanse Republiek
|
CF
|
|
Chili
|
CL
|
|
China
|
CN
|
|
Christmaseiland
|
CX
|
|
Cocoseilanden
|
CC
|
|
Colombia
|
CO
|
|
Comoren
|
KM
|
|
Congo
|
CG
|
|
Congo
|
CD
|
|
Cookeilanden
|
CK
|
|
Costa Rica
|
CR
|
|
Cuba
|
CU
|
|
Curaçao
|
CW
|
|
Cyprus
|
CY
|
|
Denemarken
|
DK
|
|
Djibouti
|
DJ
|
|
Dominica
|
DM
|
|
Dominicaanse Republiek
|
DO
|
|
Duitsland
|
DE
|
|
Ecuador
|
EC
|
|
Egypte
|
EG
|
|
El Salvador
|
SV
|
|
Equatoriaal-Guinea
|
GQ
|
|
Eritrea
|
ER
|
|
Estland
|
EE
|
|
Eswatini
|
SZ
|
|
Ethiopië
|
ET
|
|
Faeröer
|
FO
|
|
Falklandeilanden (Malvinas)
|
FK
|
|
Fiji
|
FJ
|
|
Filipijnen
|
PH
|
|
Finland
|
FI
|
|
Frankrijk
|
FR
|
|
Frans-Guyana
|
GF
|
|
Frans-Polynesië
|
PF
|
|
Franse Zuidelijke Gebieden
|
TF
|
|
Gabon
|
GA
|
|
Gambia
|
GM
|
|
Georgië
|
GE
|
|
Ghana
|
GH
|
|
Gibraltar
|
GI
|
|
Grenada
|
GD
|
|
Griekenland
|
GR
|
|
Groenland
|
GL
|
|
Guadeloupe
|
GP
|
|
Guam
|
GU
|
|
Guatemala
|
GT
|
|
Guernsey
|
GG
|
|
Guinee
|
GN
|
|
Guinee-Bissau
|
GW
|
|
Guyana
|
GY
|
|
Haïti
|
HT
|
|
Heard en McDonaldeilanden
|
HM
|
|
Honduras
|
HN
|
|
Hongarije
|
HU
|
|
Hongkong
|
HK
|
|
Ierland
|
IE
|
|
IJsland
|
IS
|
|
India
|
IN
|
|
Indonesië
|
ID
|
|
Irak
|
IQ
|
|
Iran
|
IR
|
|
Isle of Man
|
IM
|
|
Israël
|
IL
|
|
Italië
|
IT
|
|
Ivoorkust
|
CI
|
|
Jamaica
|
JM
|
|
Japan
|
JP
|
|
Jemen
|
YE
|
|
Jersey
|
JE
|
|
Jordanië
|
JO
|
|
Kaaimaneilanden
|
KY
|
|
Kaapverdië
|
CV
|
|
Kameroen
|
CM
|
|
Kazachstan
|
KZ
|
|
Kenia
|
KE
|
|
Kirgizië
|
KG
|
|
Kiribati
|
KI
|
|
Kleine afgelegen eilanden van de Verenigde Staten
|
UM
|
|
Koeweit
|
KW
|
|
Kroatië
|
HR
|
|
Lao
|
LA
|
|
Lesotho
|
LS
|
|
Letland
|
LV
|
|
Libanon
|
LB
|
|
Liberia
|
LR
|
|
Libië
|
LY
|
|
Liechtenstein
|
LI
|
|
Litouwen
|
LT
|
|
Luxemburg
|
LU
|
|
Maagdeneilanden (Brits)
|
VG
|
|
Maagdeneilanden (VS)
|
VI
|
|
Macao
|
MO
|
|
Madagaskar
|
MG
|
|
Malawi
|
MW
|
|
Maldiven
|
MV
|
|
Maleisië
|
MY
|
|
Mali
|
ML
|
|
Malta
|
MT
|
|
Marokko
|
MA
|
|
Marshalleilanden
|
MH
|
|
Martinique
|
MQ
|
|
Mauritanië
|
MR
|
|
Mauritius
|
MU
|
|
Mayotte
|
YT
|
|
Mexico
|
MX
|
|
Micronesië
|
FM
|
|
Moldavië
|
MD
|
|
Monaco
|
MC
|
|
Mongolië
|
MN
|
|
Montenegro
|
ME
|
|
Montserrat
|
MS
|
|
Mozambique
|
MZ
|
|
Myanmar
|
MM
|
|
Namibië
|
NA
|
|
Nauru
|
NR
|
|
Nederland
|
NL
|
|
Nepal
|
NP
|
|
Nicaragua
|
NI
|
|
Nieuw-Caledonië
|
NC
|
|
Nieuw-Zeeland
|
NZ
|
|
Niger
|
NE
|
|
Nigeria
|
NG
|
|
Niue
|
NU
|
|
Noord-Korea
|
KP
|
|
Noord-Macedonië
|
MK
|
|
Noordelijke Marianen
|
MP
|
|
Noorwegen
|
NO
|
|
Norfolk
|
NF
|
|
Oeganda
|
UG
|
|
Oekraïne
|
UA
|
|
Oezbekistan
|
UZ
|
|
Oman
|
OM
|
|
Oost-Timor
|
TL
|
|
Oostenrijk
|
AT
|
|
Pakistan
|
PK
|
|
Palau
|
PW
|
|
Palestina
|
PS
|
|
Panama
|
PA
|
|
Papoea-Nieuw-Guinea
|
PG
|
|
Paraguay
|
PY
|
|
Peru
|
PE
|
|
Pitcairn
|
PN
|
|
Polen
|
PL
|
|
Portugal
|
PT
|
|
Puerto Rico
|
PR
|
|
Qatar
|
QA
|
|
Réunion
|
RE
|
|
Roemenië
|
RO
|
|
Rusland
|
RU
|
|
Rwanda
|
RW
|
|
Saint Kitts en Nevis
|
KN
|
|
Saint Lucia
|
LC
|
|
Saint Vincent en de Grenadines
|
VC
|
|
Saint-Barthélemy
|
BL
|
|
Saint-Martin (Frans deel)
|
MF
|
|
Saint-Pierre en Miquelon
|
PM
|
|
Salomonseilanden
|
SB
|
|
Samoa
|
WS
|
|
San Marino
|
SM
|
|
Sao Tomé en Principe
|
ST
|
|
Saoedi-Arabië
|
SA
|
|
Senegal
|
SN
|
|
Servië
|
RS
|
|
Seychellen
|
SC
|
|
Sierra Leone
|
SL
|
|
Singapore
|
SG
|
|
Sint Maarten (Nederlands deel)
|
SX
|
|
Sint-Helena, Ascension en Tristan da Cunha
|
SH
|
|
Slovenië
|
SI
|
|
Slowakije
|
SK
|
|
Soedan
|
SD
|
|
Somalië
|
SO
|
|
Spanje
|
ES
|
|
Spitsbergen en Jan Mayen
|
SJ
|
|
Sri Lanka
|
LK
|
|
Suriname
|
SR
|
|
Syrië
|
SY
|
|
Tadzjikistan
|
TJ
|
|
Taiwan
|
TW
|
|
Tanzania
|
TZ
|
|
Thailand
|
TH
|
|
Togo
|
TG
|
|
Tokelau
|
TK
|
|
Tonga
|
TO
|
|
Trinidad en Tobago
|
TT
|
|
Tsjaad
|
TD
|
|
Tsjechië
|
CZ
|
|
Tunesië
|
TN
|
|
Turkije
|
TR
|
|
Turkmenistan
|
TM
|
|
Turks- en Caicoseilanden
|
TC
|
|
Tuvalu
|
TV
|
|
Uruguay
|
UY
|
|
Vanuatu
|
VU
|
|
Vaticaanstad
|
VA
|
|
Venezuela
|
VE
|
|
Verenigd Koninkrijk
|
GB
|
|
Verenigde Arabische Emiraten
|
AE
|
|
Verenigde Staten
|
US
|
|
Vietnam
|
VN
|
|
Wallis en Futuna
|
WF
|
|
Westelijke Sahara
|
EH
|
|
Wit-Rusland
|
BY
|
|
Zambia
|
ZM
|
|
Zimbabwe
|
ZW
|
|
Zuid-Afrika
|
ZA
|
|
Zuid-Georgia en de Zuidelijke Sandwicheilanden
|
GS
|
|
Zuid-Korea
|
KR
|
|
Zuid-Soedan
|
SS
|
|
Zweden
|
SE
|
|
Zwitserland
|
CH
|


