In news:44718492$0$31640$e4fe514c@news.xs4all.nl,
Bart Friederichs <bf@tbwb.nl> typed:
> Pugi! wrote:
>> Hoe maak je best een meertalige website ?
>
> De oplossing die ik gebruikt hebt is als volgt:
>
> Een 'lang' variabele in je session opnemen en alles wat
> taal-afhankelijk is (teksten, sommige plaatjes, etc) staat als file
> op je server. Die files include je dan als volgt:
>
> include ("filename_".$_SESSION['lang'].".ext);
>
> Bijvoorbeeld, je hebt een tekst en een plaatje:
> text/body_NL.htmlpart
> text/body_EN.htmlpart
> images/logo_NL.jpg
> images/logo_EN.jpg
>
> En een linkje op een vlaggetje van een land, die alleen die session
> variabele verandert (<a href="$PHP_THIS_FILENAME?lang=NL"><img
> src="vlag_NL.jpg"></a>).
>
> Voordelen: Talen toevoegen is makkelijk, switchen kan live, dus niet
> eerst terug naar de beginpagina; met 1 click is je pagina vertaald.
>
> Nadelen: Alles in je pagina moet altijd 100% vertaald zijn, naar alle
> talen die je aanbiedt.
>
> Zo staat het nu in ons CMS (phpwcms) en het werkt goed.
>
> Bart
Hoi Bart,
Omdat we andere prioriteiten hadden als het vertalen van sommige delen van
onze website hadden wij hier ook eerst last van ("alles moet vertaald
zijn"). We toonden dus maar een "This page is not yet available in English.
Sorry blahblahblah" voor die pagina's; niet echt een mooie oplossing. We
zijn er vanaf gestapt door op elke pagina een constante te declareren die
aangeeft of de pagina vertaald is; afhankelijk hiervan wordt door het
framework de taalvlag wel of niet getoond. Op die manier kun je ook secties
op je site maken die slechts in 1 taal beschikbaar zijn; kan soms handig
zijn of gewoon beter zo uitkomen.
Ons framewerk is echter waarschijnlijk precies omgekeerd aan de jouwe; bij
ons staat de pagina met tekst centraal en include die het framework, bij jou
lijkt de pagina het framework te zijn en include die vervolgens de tekst
zelf. Onze oplossing zou dan niet mogelijk zijn in jouw site. Maar je zou
wel kunnen kijken of de betreffende taal op disk aanwezig is, en afhankelijk
daarvan de taalvlag tonen. Of, wat iets betere performance geeft maar wel
meer administratie vergt, ook een extra standaard include maken op elke
pagina met daarin alleen een paar PHP variabelen die de mogelijke talen
bevat voor die pagina, en afhankelijk daarvan je framework de nodige
taalvlag(gen) laten kiezen.
Groetjes,
Carl

Likes:

Quote