Hreflang voor meertalige e-commerce: foutengids
Verkeerd ingestelde hreflang = uw FR-pagina's verschijnen in Canada, uw US-pagina's in Frankrijk. Zo implementeert u dit correct in Shopify en WooCommerce.

Hreflang voor meertalige e-commerce: de gids tegen fouten
U heeft een FR-webshop en opent een EN-versie voor de VS. Alles lijkt te werken — tot u merkt dat Google, wanneer iemand in Frankrijk op uw merk zoekt, de US-pagina toont. Uw Franse klanten komen op een Engelstalige pagina terecht en uw conversie daalt.
De oorzaak: een verkeerd ingestelde hreflang. Deze tag vertelt Google welke taal- of regioversie aan wie moet worden getoond. Correct toegepast ondersteunt dit internationale SEO. Verkeerd toegepast veroorzaakt het chaos met kruisende omleidingen.
Wat hreflang oplost (en niet oplost)
Hreflang lost op:
- De FR-pagina tonen aan Franstalige gebruikers, EN aan Engelstalige gebruikers
- Onderscheid maken tussen fr-FR (Frankrijk) en fr-CA (Canada) met verschillende prijzen of leveringen
- Dubbele content vermijden tussen 5 bijna identieke taalversies
Hreflang lost niet op:
- Ranking op zichzelf (hreflang is geen direct rankingsignaal)
- Prestaties per markt (lokale backlinks blijven essentieel voor elke markt)
- Problemen met de kwaliteit van vertalingen
Als uw site maar één taal heeft, heeft u geen hreflang nodig. Heeft u 2+ talen of 2+ regio's, dan is dit noodzakelijk voor nette internationale SEO.
De 3 implementatiemethoden
Methode 1 — <link>-tags in de HTML
De meest voorkomende methode. Elke pagina vermeldt haar alternatieven in de <head>:
<link rel="alternate" hreflang="fr-FR" href="https://example.com/fr/products/chaussure-derby" />
<link rel="alternate" hreflang="en-US" href="https://example.com/en-us/products/leather-derby-shoes" />
<link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/products/leather-derby-shoes" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en/products/leather-derby-shoes" />
Goed geschikt voor kleine catalogi (<1000 pagina's). Moeilijk te onderhouden bij grote volumes — elke pagina moet haar alternatieven kennen.
Methode 2 — XML-sitemap
Elke URL in de sitemap vermeldt haar varianten:
<url>
<loc>https://example.com/fr/products/chaussure-derby</loc>
<xhtml:link rel="alternate" hreflang="fr-FR" href="https://example.com/fr/products/chaussure-derby" />
<xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/en-us/products/leather-derby-shoes" />
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/en/products/leather-derby-shoes" />
</url>
Beter voor grote catalogi: centraliseert de relaties in één bestand. Eenvoudiger per script te genereren. Dit is de door Ecomptimize aanbevolen methode voor catalogi met 5.000+ productpagina's.
Methode 3 — HTTP-header Link
Voor niet-HTML-bestanden (PDF's, gelokaliseerde afbeeldingen):
Link: <https://example.com/fr/catalog.pdf>; rel="alternate"; hreflang="fr-FR",
<https://example.com/en/catalog.pdf>; rel="alternate"; hreflang="en-US"
Zeldzaam in e-commerce, nuttig voor downloadbare PDF-catalogi.
Aanbeveling: sitemap-methode voor catalogi >1000 URL's, HTML-tags voor de rest.
Hreflang vs canonical: niet verwarren
Dit is het meest voorkomende misverstand.
Canonical zegt: "dit is de referentie-URL voor deze content tussen meerdere identieke of vergelijkbare URL's". Wordt gebruikt om te dedupliceren.
Hreflang zegt: "dit zijn de taalversies van deze content, elk uniek voor zijn publiek". Wordt gebruikt om te lokaliseren.
Kritieke regel: hreflang verwijst naar een andere URL (de versie in een andere taal). canonical verwijst naar een mogelijk identieke URL (dezelfde pagina of een variant met parameters).
Een pagina moet zowel een hreflang als een canonical hebben:
<!-- Canonical van deze pagina -->
<link rel="canonical" href="https://example.com/fr/products/chaussure-derby" />
<!-- Taalversies van deze pagina -->
<link rel="alternate" hreflang="fr-FR" href="https://example.com/fr/products/chaussure-derby" />
<link rel="alternate" hreflang="en-US" href="https://example.com/en-us/products/leather-derby-shoes" />
Fatale fout: de canonical van de EN-versie laten verwijzen naar de FR-versie ("vertalingen canonicaliseren"). Google interpreteert dit als "de EN-versie is een duplicate van FR en moet worden genegeerd" en indexeert de EN-pagina dan helemaal niet. Een SEO-ramp.
De bidirectionele matrix
Hreflang moet bidirectioneel zijn: als A zegt "mijn EN-versie is B", dan moet B zeggen "mijn FR-versie is A". Anders negeert Google de relatie.
Voorbeeld van een correcte implementatie:
Pagina FR:
<link rel="alternate" hreflang="fr-FR" href=".../fr/..." />
<link rel="alternate" hreflang="en-US" href=".../en-us/..." />
<link rel="alternate" hreflang="x-default" href=".../en/..." />
Pagina EN US:
<link rel="alternate" hreflang="fr-FR" href=".../fr/..." />
<link rel="alternate" hreflang="en-US" href=".../en-us/..." />
<link rel="alternate" hreflang="x-default" href=".../en/..." />
Exact dezelfde 3 regels op elke versie. Geen ontbrekende relaties, geen asymmetrische relaties.
Regionale varianten: fr-FR vs fr-CA vs fr-BE
Wanneer moet u regio's onderscheiden?
- Verschillende prijzen (btw, levering, valuta) → ja, onderscheiden
- Licht verschillende content (US- vs EU-maten, lokale woordkeuze) → ja, onderscheiden
- Identieke content, alleen andere valuta → nee, niet onderscheiden; beheer de valuta in de checkout
Regionaal onderscheid vereist aparte URL's:
/fr/products/chaussure-derby (hreflang="fr")
/fr-ca/products/chaussure-derby (hreflang="fr-CA")
/fr-be/products/chaussure-derby (hreflang="fr-BE")
Als u geen 3 aparte versies kunt onderhouden, is het beter om één enkele fr-versie te houden en de verschillen (valuta, levering) runtime te beheren.
x-default: waarom dit onmisbaar is
hreflang="x-default" geeft aan welke versie moet worden getoond wanneer geen enkele match wordt gevonden. Bijvoorbeeld een gebruiker in Roemenië die FR, EN-US noch EN-GB in zijn voorkeuren heeft — welke versie toont u dan?
Zonder x-default kiest Google willekeurig. Met x-default houdt u de controle (meestal de meest generieke EN-versie).
Aanbeveling: declareer altijd een x-default, idealiter de generieke Engelse versie.
Implementatie per platform
Shopify
Shopify Markets (sinds 2022) beheert hreflang standaard als u meerdere markets configureert met aparte domeinen of subdomeinen. In de meeste gevallen is geen maatwerk nodig.
Beperkingen: Shopify Markets ondersteunt niet alle taal-/landcombinaties met fijne granulariteit. Voor complexe gevallen (10+ markten) gebruikt u beter een app zoals Langify + de handmatige hreflang-module.
WooCommerce
WooCommerce heeft geen native ondersteuning. Drie opties:
- WPML (paid): toonaangevende meertalige plugin, beheert hreflang automatisch
- Polylang (free/paid): alternatief met goede hreflang-ondersteuning
- TranslatePress (paid): eenvoudiger voor kleine catalogi
Let op: combineer geen twee plugins (WPML + Polylang), dat veroorzaakt dubbele en kapotte hreflang-tags.
Headless of custom
Als u een custom frontend gebruikt (Next.js, Nuxt), genereert u hreflang server-side. In Next.js met next-intl gebeurt de generatie automatisch als u routes gebruikt als /[locale]/....
Hreflang-audit in 15 min
Controleer op uw huidige site:
- Bidirectionaliteit: controleer voor 10 testpagina's of elke versie wederzijds naar de andere verwijst (via Screaming Frog of hreflang.org)
- x-default aanwezig: op alle gelokaliseerde pagina's
- Geen cross-language canonical: de EN-versie mag niet canonicaliseren naar FR
- Geldige ISO-codes: "fr", "en" (taal) of "fr-FR", "en-US" (taal-land). Niet "french" of "uk".
- Dezelfde URL in hreflang en canonical van dezelfde pagina: voorkomt afwijkingen
Gratis tools:
- hreflang.org — audit per URL
- Screaming Frog (SEO Spider) — audit op grote schaal
- Google Search Console — hreflang-foutrapporten in Settings → International Targeting
FAQ
Hoe lang duurt het voordat Google hreflang meeneemt?
4 tot 8 weken voor een nette implementatie op een bestaande catalogus. Google moet elke pagina opnieuw crawlen, de bidirectionele relaties valideren en de ranking per markt aanpassen. Er is geen direct effect.
Kan ik hreflang alleen in de sitemap hebben zonder HTML-tags?
Ja, dat wordt zelfs aanbevolen voor grote catalogi. Google ondersteunt de 3 gelijkwaardige methoden. Kies de methode die het eenvoudigst te onderhouden is voor uw stack.
Werkt hreflang ook op Bing en Yandex?
Bing wel. Yandex wel. Baidu gedeeltelijk. Ze gebruiken allemaal dezelfde standaard. U hoeft geen specifieke variant te implementeren.
Wat moet ik doen als mijn vertalingen door AI zijn gegenereerd en niet perfect zijn?
Hreflang werkt ongeacht de herkomst van de content — menselijke vertaler of AI. Wat telt: dat de pagina's uniek zijn per locale (zelfs als 80% vergelijkbaar is met een eerlijke vertaling), niet hun herkomst.
Kan ik hreflang gebruiken voor identieke content met alleen een andere valuta?
Technisch gezien wel, maar er is risico op een sanctie als het verschil te klein is. Google kan de pagina's beschouwen als duplicaten zonder toegevoegde lokale waarde. Beter: één pagina met dynamische valuta in de navigatie.
Moet mijn meertalige blog hreflang hebben?
Ja, precies zoals uw productpagina's. Elk vertaald artikel moet naar zijn versies verwijzen, en uw bloghub moet ook naar de gelokaliseerde hubs verwijzen. Bekijk ons redactioneel plan voor 7 talen voor het volledige proces.
Voor het uitrollen van uw catalogus in 7 talen met nette hreflang, bekijk Ecomptimize voor Shopify of Ecomptimize voor WooCommerce.
Vond je dit artikel interessant?