Una solución para Moodle: Una instalación, dos idiomas

Tenía un problemilla que os paso a explicar, junto con una sencilla solución que he implementado.

Tengo una instalación Moodle y dos dominios que apuntan a ella, digamos formacion.es y training.com. Lo que deseaba es que si alguien accedía a formacion, se lo mostrara el interfaz en castellano y si accedía a training se viera en inglés.

Después de mucho consultar en foros y listas, encontré... nada.

O bien nadie había tenido este problema, o lo habían resuelto instalando Moodle varias veces en diferentes sitios. Una solución poco elegante, a mi modo de ver. Así que, tras unos cuantos intentos que no funcionaron, hice una copia de la base de datos de moodle (con mysqldump), creando moodle_en y le asigné todos los permisos de la nueva base de datos al usuario usuario_moodle, que ya tenía también todos los permisos para la base de datos original.

Luego hackee config.php dejándolo de la siguiente forma:

<?php /// Moodle Configuration File

$CFG->dbtype = 'mysql';

$CFG->dbhost = 'localhost';

if ($_SERVER['HTTP_HOST']=='formacion.es')

{

$CFG->dbname = 'moodle';

$CFG->wwwroot = 'http://formacion.es/';

}

else if ($_SERVER['HTTP_HOST']=='training.com')

{

$CFG->dbname = 'moodle_en';

$CFG->wwwroot = 'http://training.com/';

}

$CFG->dbuser = 'usuario_moodle'; // El usuario de la base de datos de moodle

$CFG->dbpass = 'contraseña'; // ... y su contraseña.

$CFG->dbpersist = false;

$CFG->prefix = 'mdl_';

$CFG->dirroot = '/var/www/html/moodle';

$CFG->dataroot = '/var/www/moodledata';

$CFG->admin = 'admin';

$CFG->directorypermissions = 00777; // try 02777 on a server in Safe Mode

$CFG->unicodedb = true; // Database is utf8

require_once("$CFG->dirroot/lib/setup.php");

// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,

// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.

?>

¡Y funciona!

Obviamente ni los ejercicios, foros, tests, ni siquiera el aspecto (regido por temas), se comparten, por lo que, a efectos prácticos, es como tener dos (o más) instalaciones de Moodle, en uno solo.

Paul

P.D.: Perdonad el formateo raro. Algo extraño pasa con la etiqueta <code>.