[TYPO3-UG Dutch] Taal website op basis van IP - adres?
H. Hahn
h.hahn at hahn-informatica.nl
Sun Sep 14 17:25:18 CEST 2008
Met PhpInfo kan ik zien dat in mijn geval
$_SERVER['HTTP_ACCEPT_LANGUAGE'] de string
"nl,de;q=0.8,en;q=0.5,fr;q=0.3" bevat. Wat die "q=0.8" e.d. betekenen,
weet ik oon (nog) niet. Maar die tweeletterige taalcodes zijn wel
degelijk de door mij ingestelde voorkeurstalen in mijn browser
(inderdaad in die volgorde).
Met PHP zijn ze gemakkelijk uit te lezen. Bijv:
<?php
$Talen = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
if (strpos ($Talen, "nl") !== false)
{
$Lang = "nl";
}
else if (strpos ($Talen, "de") !== false)
{
$Lang = "de";
}
else if (strpos ($Talen, "fr") !== false)
{
$Lang = "fr";
}
else
{
$Lang = "en";
}
// Bouw verder de website op met de taal die in $Lang staat
?>
Ik neem aan dat deze taalcode ook met Typoscript te lezen is: in TSRef
vind ik in het hoofdstuk Condition Reference een parameter "language"
die zoiets doet. (Zelf gebruik ik liever PHP, dus met deze TS-paramete
rheb ik geen ervaring.)
Lukt het echt niet, overweeg dan een klein hulppaginaatje te maken dat
met javascript de taal uitleest en vervolgens een nieuwe URL opbouwt en
de bezoeker daar naartoe doorstuurt. Dit is geen elegenate oplossing
(hij is trager, en werkt alleen wanneer Javascript ingeschakeld is).
Behalve de taalcode moet deze JS natuurlijk ook de hele query string
uitlezen om te weten naar welke pagina hij moet doorsturen. Dat hoeft
niet per se de startpagina te zijn, immers iemand kan via een link
(bijv. vanaf Google) naar een specifieke pagina binnenkomen.
H. Hahn
Jordan van Bergen schreef:
> Beste H. Hann,
>
>> Is het niet veel beter om naar de voorkeurstaal van de browser te
>> kijken? Iemand kan in een land zitten waarvan hij de taal onvoldoende
>> kent, en daar toch een IP-adres hebben. Het IP-adres geeft dan een
>> niet-adequaat resultaat.
>> Aan te nemen is daarentegen dat hij zijn browser heeft ingesteld op
>> een voorkeurstaal die hij wle kent. Volgens mij is dat in Javaascript
>> zoiets als:
>> navigator.browserLanguage
>> Of PHP dit ook kan uitlezen, zou ik zo gauw niet weten. Mogelijk
>> $_SERVER['HTTP_ACCEPT_LANGUAGE']? Zo ja, dan denk ik dat Typoscript
>> hem ook wel kan uitlezen, maar daar ben ik niet zo goed in thuis.
>
> Dit zou op zich wel een gave oplossing zijn.
>
> Ben benieuwd of iemand weet hoe je dit kunt uitlezen. Ik denk als we
> dit met zijn allen tacklen er veel typo3 beheerders blij worden als ze
> dit in de vingers krijgen. Best gaaf als je op basis van de
> voorkeurtaal van een browser die een site opvraagt deze site ook
> daadwerkelijk in die taal (mits ingesteld in typo3) laat zien.
>
> BY THE WAY: Wat Jigal van Hemert als reacties plaats kan ik nooit
> lezen omdat er iets komt te staan van: the message header contains
> illegal data en ook online is dit niet op te vragen:
> http://support.typo3.org/int-usergroups/dutch/m/re-typo3-ug-dutch-taal-website-op-basis-van-ip-adres-364325/
>
>
> Groeten,
> Jordan
More information about the TYPO3-UG-dutch
mailing list