Bienvenid@s, hoy veremos un ejemplo de como tener una web multilenguaje. No se trata de incluir el plugin Google Translate en la web, sino de trabajar con PHP y definir el texto de cada parte de la web para que esté disponible en diferentes lenguajes.
Esto lo podemos hacer a través de scripts php separados que como se dijo anteriormente vayan definiendo el texto de la web, cada uno en su lenguaje, por ejemplo, vamos a hacer que el texto esté disponible en inglés y español y el usuario pueda modificar el lenguaje desde un campo select. Por defecto la web se mostrará en lenguaje español.
Empezaremos definiendo el lenguaje para el idioma español, a este script lo llamaremos es.php:
$lang = array
(
'title' => 'Bienvenidos a la página de inicio',
'description' => 'Ejemplo de como crear una web multilenguaje con PHP',
'select' => 'Seleccionar lenguaje:',
'footer' => 'Este es el pie de página',
);
Ahora, que hemos definido el texto que tendrá la web en español, es momento de realizar lo mismo, pero para el inglés, a este script lo llamaremos en.php:
$lang = array
(
'title' => 'Welcome to the home page',
'description' => 'Example of how to create a multilingual website with PHP',
'select' => 'Select language:',
'footer' => 'This is the footer',
);
Muy bien, ahora el usuario podrá seleccionar un lenguaje u otro a través del campo select que se mostrará en la web:
A este script lo llamaremos home.php y será la simulación de la página de inicio del sitio web:
<?php
/* Si el usuario selecciona un lenguaje lo cargamos */
if (isset($_POST["select"]))
{
$select = $_POST["select"];
require $select.".php";
}
else
{
/* Lenguaje por defecto */
require "es.php";
}
?>
<!DOCTYPE HTML>
<html>
<head>
<title><?php echo $lang["title"] ?></title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script>
$(function(){
$("select").on("change", function(){
$("#form").submit();
});
});
</script>
</head>
<body>
<h1><?php echo $lang["title"] ?></h1>
<h4><?php echo $lang["description"] ?></h4>
<form method="post" id="form">
<?php echo $lang["select"] ?>
<select name="select">
<option value=""></option>
<option value="es">es</option>
<option value="en">en</option>
</select>
</form>
<small><?php echo $lang["footer"] ?></small>
</body>
</html>
Resultado de la web en español:
Resultado de la web en inglés:
Como podéis ver funciona perfectamente, espero que les haya gustado, saludos.
No hay comentarios:
Publicar un comentario