Aquí está, funcionando...
Código PHP:
Ver original<?php
/* Este código detecta el idioma por defecto del visitante.
Sin embargo, si el visitante indica un idioma mediante la URL (siguiendo un enlace) toma preferencia */
// Miramos si el usuario ha definido un idioma por defecto en su navegador
//$_SERVER['HTTP_ACCEPT_LANGUAGE']
//$_GET['idioma'];
//$HTTP_ACCEPT_LANGUAGE != ''
$idioma = $_GET['idioma'];
if ($_SERVER['HTTP_ACCEPT_LANGUAGE'] != ''){
// Si es así, miramos que idiomas ha definido:
$idiomas = explode(",", $_SERVER['HTTP_ACCEPT_LANGUAGE']); # Convertimos HTTP_ACCEPT_LANGUAGE en array
/* Recorremos el array hasta que encontramos un idioma del visitante que coincida con los idiomas en que está disponible nuestra web */
for ($i=0; $i<count($idiomas); $i++){ // Si aún no hemos definido la variable $idioma...
/* Miramos si tiene algún idioma de los disponibles entre sus favoritos.
Empezando por su primer favorito y acabando por su último favorito */
if (substr($idiomas[$i], 0, 2) == "es"){$idioma = "es";} if (substr($idiomas[$i], 0, 2) == "en"){$idioma = "en";} if (substr($idiomas[$i], 0, 2) == "de"){$idioma = "de";} //if (substr($idiomas[$i], 0, 2) == "gl"){$idioma = "gl";}
}
}
}
// Si aún no hemos encontrado ningún idioma que nos convenga, mostramos la web en el idioma por defecto
//if (empty($Idioma)){$idioma = "es";}
// Ahora incluimos la plantilla de idioma correspondiente al idioma que pertoque:
include("idioma_$idioma.php");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<!--// Ahora sustituimos los textos por variables (contenidas en textos_$idioma.php)-->
<title><?php echo $t_titulo; ?></title>
</head>
<body>
<h1><?php echo $t_cabecera; ?></h1>
<p><?php echo $t_texto; ?></p>
<ul>
<!-- Estos textos no los sustituímos porque son los nombres de los idiomas en el idioma al que apuntan ?>-->
<?php if ($idioma != 'es') { ?><li><a href="index.php?idioma=es">Español</a></li><?php } ?>
<?php if ($idioma != 'en') { ?><li><a href="index.php?idioma=en">English</a></li><?php } ?>
<?php if ($idioma != 'de') { ?><li><a href="index.php?idioma=de">Deutsch</a></li><?php } ?>
</ul>
</body>
</html>