QUesto codice ovviamente non ti fa vedere niente a video perché non c'è alcun output, ti spega solo come fare a collegarti ed usare il framework.
Il codice completo che usavo io in quella pagina verificava se c'era un utente loggato, se era un admin o un utente normale e reindirizzava alla pagina relativa. creata comunque con php classico.
Tanto per dire, il controllo se fosse un admin lo facevo così
Codice PHP:
//verifico se a collegarsi è stato l'amministratore
$query "SELECT * FROM bdt_admin WHERE admin_name='$user->username'";
$dbresult mysql_query($query,$db);
$AffectedRows mysql_affected_rows($db);
if(
$AffectedRows 0) {
    
mysql_free_result($dbresult);
    
mysql_close($db);
    
$trovato true;
    
header("location: /prestazioni/admin/admin.php?username=$user->username");

e la pagina dell'admin era questa:
Codice PHP:
<?php
    session_start
();
    if(!isset(
$_SESSION['ingresso'])){
        
$_SESSION['ingresso']= true;
    }
    if(
$_REQUEST['username'] == "") die ("Accesso consentito solo dopo aver effettuato il login");
    
$_SESSION['admin'] = $_REQUEST['username'];
    
define'DS'DIRECTORY_SEPARATOR );
    require(
"..".DS."connection.php");
?>
<link rel="stylesheet" type="text/css" href="../css/prestazioni.css"/>
<?php
$connection 
= new connection();

$db mysql_connect($connection->getHost(),$connection->getDbUser(),$connection->getPass())
    or die (
"Impossibile connettersi al server ".$connection->getHost());

mysql_select_db($connection->getDatabase(),$db)
    or die (
"Impossibile accedere al database ".$connection->getDatabase());
?>
<table width="100%" border="0">
    <tr>
        <td align="right" width="33%">
            [url="gestione_medici.php?ordine=cognome"][img]../img/btn_gestmed.png[/img][/url]
        </td>
        <td align="center" width="34%">
            [url="gestione_pazienti.php?ordine=cognome"][img]../img/btn_gestpaz.png[/img][/url]
        </td>
        <td  align="left" width="33%">
            [url="gestione_prestazioni.php?ordine=data"][img]../img/btn_gestprest.png[/img][/url]
        </td>
    </tr>
</table>
I link anlle pagine del sistema erano impostate su Joomla come "Wrapper" così attorno ci veniva messa la grafica del sito.
Per questo motivo nelle pagine non devi ripetere i tag html <html> <header> <body> perché ci saranno già quelli del template in uso.

Come ti ripeto però funzionava su Joomla 1.5, sulle versioni nuove non l'ho provato.