X
    Categoria: Joomla

Resgatando usuário do CMS Joomla

 

Possivelmente uma hora você terá que fazer verificações na sessão ou recuperar dados do CMS Joomla! em arquivos externos (fora da plataforma do Joomla!) para saber se um usuário está ou não logado no sistema.

Para acessar user_id basta criar um arquivo, neste exemplo usaremos teste.php salvo no root do projeto, com o código abaixo:

// Set flag that this is a parent file.
define('_JEXEC', 1);
define('DS', DIRECTORY_SEPARATOR);
$path = "/home/www/dominio/public_html/";  //caminho da instalação do Joomla
define('JPATH_BASE', $path);
require_once JPATH_BASE . DS . 'includes' . DS . 'defines.php';
require_once JPATH_BASE . DS . 'includes' . DS . 'framework.php';
$app = JFactory::getApplication('site');
$app->initialise();
$session = JFactory::getSession();
$session_id = $session->get('user_id', 'empty');
var_dump($session_id);

 

Neste exemplo o arquivo test.php ira imprimiar na tela a id do usuário logado. Existe varias utilizações para este script.

Caso não esteja utilizando session basta usar o seguinte código:

 

// Set flag that this is a parent file.
define('_JEXEC', 1);
define('DS', DIRECTORY_SEPARATOR);
$path = "/home/www/dominio/public_html/";  //caminho da instalação do Joomla
define('JPATH_BASE', $path);
require_once JPATH_BASE . DS . 'includes' . DS . 'defines.php';
require_once JPATH_BASE . DS . 'includes' . DS . 'framework.php';
$mainframe =& JFactory::getApplication('site');
$db = &JFactory::getDBO();
$mainframe->initialise();
$user =& JFactory::getUser( );


echo $user->id;  //imprime id do usuário

echo $user->name; //imprime nome do usuário

 

 

Juliano Rossetto: Formado em Analise e Desenvolvimento de Sistemas. Desenvolvedor dos principais CMS ( Wordpress, Joomla). Desenvolvedor de E-commerce (Opencart e WooCommerce). Analista de SEO: Otimização de sites para mecanismos de buscas. Analista de Infraestrutura voltado para servidores na nuvem: Amazon Web Services (AWS), DigitalOcean e Linode. Para dúvidas ou serviços entre em contato aqui.
Posts relacionados