Pasar parámetros a un wrapper en Joomla

La semana pasada estuve desarrollando una aplicación que accedía a la base datos de joomla y  a unas bases de datos externas, para ello pensé en crear un script en php que hacía todo el trabajo y utilizar el componente wrapper para mostrar todo el resultado dentro de un portal Joomla. Desarrollé toda la aplicación como si de una aplicación web normal se tratase y cuando llego la hora de usar el wrapper me di cuenta que no permitía pasar parámetros en la URL.

 

San Google bendito vino al rescate con una interesante solución de Thomas Kahl. Esta solución se basa en la modificación del componente com_wrapper, este componente pertenece al core, por lo que si actualizáis vuestra versión de Joomla y este componente es actualizados deberéis volver a realizar la modificación.

 

  •  Haz una copia de seguridad del archivo /components/com_wrapper/wrapper.php
  • Abre el archivo en el editor de textos y ve a la línea 35.
  • Busca el siguiente texto:   $url = $params->def( 'url', '' );
  • Inserta el siguiente bloque de texto a continuación:

 foreach ($_GET as $key => $value) { 
     if ($key<>"option" && $key<>"Itemid") { 
          $url.=(strpos($url,"?")) ? "&" : "?";
          $url.="$key=$value"; 
     }
}

  •  Guarda el archivo y prueba que funciona.

Para probar el funcionamiento me imagino que tendréis que utilizar una cadena similar a esta:
http://wwww.tudominio.com/index.php?option=com_wrapper&view=wrapper&Itemid=XX¶m1=AA¶m2=BB....
 
Donde XX será el ID del Wrapper y param1=AA será el primer parámetro que reciba el script, param2=BB el segundo parámetro y así sucesivamente hasta utilizar todos los parámetros necesarios para el script. 

 

Escribir un comentario

Por favor procura que tus comentarios estén relacionados con la entrada, comenta con tu nombre y no pongas enlaces en tu comentario. Intenta también respetar a los demás lectores, los comentarios off topic, promocionales, ofensivos o ilegales serán editados y borrados.


Código de seguridad
Refescar