Hét vraag- en antwoordplatform van Nederland

Hoe laat je een taalkeuze onthouden op een website?

Beste, Ik zou graag een taal keuzemenu hebben op mijn website, Engels en Nederlands. Ze moeten dan gewoon verwijzen naar nl.domain.be of en.domain.be. Ik heb wel weinig kennis van codes en cookies, de forums die ik op het internet lees zijn onduidelijk voor mij. Kan iemand het eenvoudig aan mij uitleggen. Mijn tijdelijk keuze menu staat op http://taal.mkaa.be

MVG
Nicocool

Verwijderde gebruiker
9 jaar geleden
1.3K
Verwijderde gebruiker
9 jaar geleden
Even los van vraag: vergeet niet Meta-informatie toe te voegen aan je site(s), zodat Google weet dat e.e.a. 2-talig beschikbaar is (en vervolgens die info gebruikt om zoekenden meteen goed door te verwijzen).

Heb je meer informatie nodig om de vraag te beantwoorden? Reageer dan hier.

Het beste antwoord

Op je gewone domein (zonder nl of en subdomein) zou ik een php script zetten die checkt of een cookie bestaat (met $_COOKIE["language"]) en afhankelijk daarvan redirect naar je nl of en domein (met http_redirect("jouwurl");).

Zo niet, presenteer je de pagina met de keuze links. Deze laat je wijzen naar een aparte setlanguage.php pagina, die de keuze opslaat in een cookie (met setcookie("language", ...)) en ook redirect naar het juiste subdomein. Geef het cookie wel een expire time, anders is het verdwenen als de browser sluit.
(Lees meer...)
Verwijderde gebruiker
9 jaar geleden
Verwijderde gebruiker
9 jaar geleden
Beste, bedankt, maar welke code moet ik dan op die pagina die zal worden doorgestuurd naar de juiste domeinnaam plaatsen?
Verwijderde gebruiker
9 jaar geleden
Op je index pagina (bv. index.php): if (isset($_COOKIE["language"]))
{
switch($_COOKIE["language"])
{
case 'nl':
header("Location: index-nl.html");
break;
case 'en':
header("Location: index-en.html");
break;
}
}
?>


Kies je taal:


Nederlands

English

En dan de chooselanguage.php: if (isset($_GET["language"]))
{
switch($_GET["language"])
{
case 'nl':
setcookie('language', 'nl');
header("Location: index-nl.html");
break;
case 'en':
setcookie('language', 'en');
header("Location: index-en.html");
break;
}
}
else
{
header("Location: index.php");
}
?> (Ik weet even niet waarom de http_redirect() niet werkt, maar de header() functie is ook een manier om te redirecten).
Verwijderde gebruiker
9 jaar geleden
Kleine aanvulling: de setcookie zonder expiration is weer weg zodra de browser gesloten is. Er moet nog een expiration time bij: setcookie('language', 'nl', time() + 24 * 60 * 60 * 365); Zo blijft de cookie 1 jaar geldig (huidig tijdstip + seconden)
Verwijderde gebruiker
9 jaar geleden
Bedankt voor dit uitgebreide antwoord. Ik ga het meteen toepassen.+
Verwijderde gebruiker
9 jaar geleden
Bedankt, maar waar juist moest ik de code plaatsen, ik werknamelijk met een design software. bv na /
Verwijderde gebruiker
9 jaar geleden
Het werkt toch nog niet op http://taal.mkaa.be

Andere antwoorden (1)

Ik weet of ik je vraag nu juist begrepen heb, maar volgens mij zoek je het volgende:

plaats dit in je HTML code

Nederlands
Engels
(Lees meer...)
Verwijderde gebruiker
9 jaar geleden
Verwijderde gebruiker
9 jaar geleden
Nee, Ik bedoel keuzen onthouden dmv cookie.
Verwijderde gebruiker
9 jaar geleden
-1 Die keuze staat al in de website van vraagsteller...

Weet jij het beter..?

Het is niet mogelijk om je eigen vraag te beantwoorden Je mag slechts 1 keer antwoord geven op een vraag Je hebt vandaag al antwoorden gegeven. Morgen mag je opnieuw maximaal antwoorden geven.

0 / 2500
Gekozen afbeelding