Cómo acceder variables de sesión asignadas, desde un script externo
From Joomla! Documentation
Situación: cuando una variable de sesión es llamada en Joomla desde un script externo, esta parece estar vacía.
Solución:
Reemplazar session_start(); en el script externo con
define( '_JEXEC', 1 );
define( 'JPATH_BASE', realpath(dirname(__FILE__).'/../..' ));
require_once ( JPATH_BASE. '/includes/defines.php' );
require_once ( JPATH_BASE. '/includes/framework.php' );
$mainframe = JFactory::getApplication('site');
$mainframe->initialise();
Asegúrate de cambiar JPATH_BASE según tu estructura de directorios.
Reemplaza $_SESSION[ 'nombre' ] = "valor"; en tu script externo con
$session = JFactory::getSession();
$session->set('name', "value");
Ahora puedes obtener esta variable de sesión usando:
$session = JFactory::getSession();
echo $session->get('name');