Per determinare se esiste un utente che ha effettuato il login ed ottenere informazioni quali il nome, il tipo utente o l'indirizzo e-mail con cui si è registrato al sito è necessario ottenere un riferimento all'oggetto utente globale (un'istanza della classe JUser definita nel framework di Joomla!) ed accedere alle sue proprietà.
- id - contenuto del campo ID nella tabella users.
- username - nome utente utilizzato per la registrazione al sito.
- name - nome personale.
- usertype - una stringa contenente uno dei seguenti valori: Registered, Author, Editor, Publisher, Manager, Administrator, Super Administrator.
- guest - questa proprietà vale True se l'utente corrente sta visualizzando il sito come ospite (id è 0 (zero) e tutte le altre proprietà empty). Il valore è False se l'utente corrente ha effettuato il login.
Vediamo il codice
$user =& JFactory::getUser();
echo $user->id;
echo $user->username;
echo $user->name;
echo $user->email;
echo $user->usertype;
echo $user->guest;
Questo codice funziona nei componenti, moduli (quelli installabili non i moduli di tipo HTML personalizzato che si creano dalla Gestione moduli nell'area di amministrazione) e template.
Per esempio includendo le righe di codice seguenti in index.php del template è possibile mostrare un'informazione solo agli utenti ospiti o solo a quelli che hanno effettuato il login.
$user =& JFactory::getUser();
if($user->guest) {
echo 'solo utenti ospiti vedranno questo';
} else {
echo 'solo utenti che hanno fatto il login vedranno questo';
}






