Moin,
Ich möchte für ein zweisprachiges Orchester einen Internetseite gestalten. Diese soll es in zwei Varianten geben: deutsch, ungarisch. Wie macht man das am effizientesten?
Eine Seite? Und dafür (wie diskutiert) ein CMS mit Einarbeitungs- und Folgeproblemen ?
Ich habe eine ganz einfache PHP-Lösung. Ich nehme eine ganz normale HTML-Seite in einer PHP Datei und schreibe die Sprachen nacheinander in dieser Form:
<p>###deutsche Sprache###english language###Nederlandse taal###</p>
Lediglich die Bereiche mit den Sprachen werden jeweils in ein php-Kommando eingebettet:
<? zeig_lg( "<p>###deutsche Sprache###english language###Nederlandse taal###</p>" ); ?>
Daraus wird ein Array, auf Platz 0 ist immer deutsch, Platz 1 english usw:
function zeig_lg( $zeile )
{
global $lg_ndx;
// 2011-02-17 PRO ZEILE EINMAL: SPRACHEN-AUSWAHL
if ( strpos( 'x'.$zeile, '###' ))
{
$arr_lg = explode( '###', $zeile );
$zeile = $arr_lg[0].$arr_lg[$lg_ndx].$arr_lg[count($arr_lg)-1];
}
echo $zeile;
}
Bleibt nur noch, die Sprache festzulegen. Vorrang hat der Parameter lg beim Aufruf des PHP Programms, sonst wird die Browser-Sprache genommen:
$bia_lg =( $_REQUEST['lg'] ) ? $_REQUEST['lg'] : strtolower( $_SERVER['HTTP_ACCEPT_LANGUAGE'] );
$arr_bia_lg = explode( ',', $bia_lg ); // ru,en;q=0.9,es;q=0.8,de;q=0.7
if ( $arr_bia_lg[0] ) $bia_lg = $arr_bia_lg[0];
// Sprach-Index bestimmen
if ( $bia_lg == 'de' ) { $lg_ndx = 1; }
else if ( $bia_lg == 'en' ) { $lg_ndx = 2; }
else if ( $bia_lg == 'nl' ) { $lg_ndx = 3; }
// meine Seiten laufen unter drei Domains: example.de, example.eu und example.com
// falls sowas reinkommt wie jp nimm de für example.de, sonst en
else if ( strpos( $bia_domain, '.de' )){ $lg_ndx = 1; }
else { $lg_ndx = 2; }
Und schon fertig. Hier zu sehen: http://remso.eu/_text/news.php?lg=nl
Linuchs