Cambiar el tema de Xoops si se accede con un dispositivo móvil

Xoops es el CMS que utilizo desde hace algún tiempo para crear sitios y portales.
Últimamente con el auge de las plataformas móviles, es necesario que nuestras páginas tengan una forma de visualización adaptada a los navegadores de tales plataformas.
Estuve investigando un poco y encontré un módulo de WURLF que permite seleccionar un tema distinto de Xoops de manera automática cuando detecta que la página está siendo visualizada desde un navegador móvil.
Desgraciadamente no funcionó como yo esperaba el módulo WURLF y debido a limitaciones de tiempo, tuve que buscar otra opción.
Encontré una clase llamada Mobile_Detect (http://code.google.com/p/php-mobile-detect/) que permite detectar si se está usando un dispositivo móvil para visualizar la página donde se usa la clase.
El siguiente paso era descubrir dónde se puede cambiar el tema que utiliza Xoops para mostrar una página, instanciar la clase Mobile_Detect y verificar si se está visualizando desde un dispositivo móvil, y entonces cambiar el tema si ese es el caso.
Descubrí unas líneas en el archivo header.php de Xoops (ubicado en el directorio raíz de Xoops) y por ahí de la línea 51 (no sé si moví el código y los números de línea cambiaron) encontré estos códigos:

 $xoopsThemeFactory = null;
$xoopsThemeFactory = new xos_opal_ThemeFactory();
$xoopsThemeFactory->allowedThemes = $xoopsConfig['theme_set_allowed'];
 $xoopsThemeFactory->defaultTheme = $xoopsConfig['theme_set']; 

Finalmente, agregué estas líneas, para lo cual tuve que colocar el archivo Mobile_Detect.php en el directorio /class (puede colocarse en cualquier otro directorio, pero por orden, lo puse ahí):

require_once $GLOBALS['xoops']->path('class/Mobile_Detect.php');
$detect = new Mobile_Detect();

if ($detect->isMobile())
    $xoopsThemeFactory->defaultTheme = "default";

Y listo, con esta modificación, el tema a usarse será el tema llamado “default”, en lugar del tema que utiliza la página normalmente.

Lo que sigue es adaptar el tema “default” para que funcione adecuadamente en los dispositivos móviles. Hice algunos cambios al archivo theme.html y al style.css para hacer más grandes las letras y cambiar a una sola columna la disposición de la página.

Una manera fácil y rápida de adaptar Xoops, en lo que puedo echar a andar WURLF o se encuentra otra manera más adecuada y personalizable.