- Anúncio -
- Anúncio -
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
- Anúncio -