Technisch artikel
Meertalige website bouwen zonder SEO- en beheerproblemen
Een meertalige website vraagt echte vertalingen en duidelijk beheer. Lees hoe taal-URLs, hreflang, formulieren en een vertaalworkflow samenhangen.
- website
- localeconfiguratie
- hreflang
- canonicals
- vertalingen
- slugs

In dit artikel
Geef iedere taal een eigen bereikbare URL en een canonical naar die taalversie. Hreflang verbindt inhoudelijk overeenkomstige pagina’s; het vervangt geen vertaling en stuurt niet alle taalversies naar één Nederlandse canonical.
Voorbeeld voor de homepage: /nl verwijst canoniek naar /nl, /en naar /en en /fr naar /fr. Alle drie verwijzen wederzijds naar dezelfde drie taalversies. Een taalkeuzepagina of passende fallback kan als x-default dienen. Een dienst zonder echte vertaling krijgt geen verzonnen alternatief.
- Open iedere expliciete taal-URL met een andere browsertaal en controleer dat de gekozen taal blijft staan.
- Controleer HTTP-status, self-canonical en wederzijdse hreflang per equivalente pagina.
- Laat titel, inhoud en CTA door een taalvaardige lezer controleren, niet alleen de labels.
Begin met inhoud en verantwoordelijkheden per taal
Een meertalige website heeft afzonderlijke, bruikbare taalversies én een beheerafspraak. Bepaal welke diensten en pagina’s echt vertaald zijn, wie wijzigingen opvolgt en wie de aanvraag in die taal kan behandelen. Alleen een vertaald menu is geen volledige taalversie.
- Vertaal de hoofdinhoud, title, beschrijving, knoppen, formulierlabels en foutmeldingen samen.
- Controleer relevante voorwaarden en privacy-informatie voor iedere gepubliceerde taal.
- Laat een taalkeuze naar de overeenkomstige pagina wijzen, wanneer die werkelijk bestaat.
Gebruik stabiele URLs en echte taalalternatieven
Een taalpad zoals /nl/, /en/ of /fr/ onderscheidt versies; de slug hoeft niet voor iedere taal anders te zijn. Geef iedere echte taalpagina haar eigen passende canonical. Gebruik hreflang alleen voor overeenkomstige gepubliceerde pagina’s, met absolute URLs, de pagina zelf en terugverwijzingen.
Illustratief scenario: een dienst bestaat in het Nederlands en Engels, maar is nog niet in het Frans vertaald. Maak geen Franse alternatieve verwijzing naar de homepage alsof die dezelfde dienst bevat. Een optionele x-default verwijst naar een bewust gekozen standaardbestemming.
Laravel 13: routes vormen nog geen vertaling
Het routefragment hieronder veronderstelt use Illuminate\Support\Facades\Route in routes/web.php en een bestaande pages.home-view. De prefix en routenaam organiseren URLs. Het project moet daarnaast de locale instellen en echte vertaalde inhoud laden; dit fragment doet dat niet automatisch.
foreach (['nl', 'en', 'fr'] as $locale) {
Route::prefix($locale)
->name("localized.{$locale}.")
->group(function () use ($locale): void {
Route::view('/', 'pages.home')->name('home');
});
}Taalverwijzingen in een Blade-template
Het Blade-fragment verwacht door het project gevalideerde, absolute URLs in $alternates, inclusief de huidige pagina. $defaultUrl is de gekozen x-default. Neem geen ongepubliceerde vertaling op en controleer dezelfde set bij iedere equivalente taalpagina.
@foreach ($alternates as $locale => $url)
<link rel="alternate" hreflang="{{ $locale }}" href="{{ $url }}">
@endforeach
<link rel="alternate" hreflang="x-default" href="{{ $defaultUrl }}">Houd wijzigingen samen bij
- Noteer per pagina welke taalversies een inhoudswijziging nodig hebben.
- Test navigatie, aanvraagcontext, formulierfouten en bedankt-informatie per taal.
- Controleer op mobiel lange vertaalde knoppen en bereikbare taalkeuze.
- Controleer canonical, taalverwijzingen, sitemap en interne links na publicatie.
Een extra taal garandeert geen verkeer of aanvragen. Prioriteer talen op de werkelijke doelgroep en beschikbare inhoud en opvolging.
Laatst bijgewerkt:


