Joomla.it Forum
Joomla! 1.5.x (versione con supporto terminato) => Joomla! 1.5 => I Template di Joomla 1.5.x => : crobi 30 Jul 2009, 16:45:53
-
è possibile impostare un template diverso per l'area riservata?
o addirittura per singoli profili utente?
se si come?
grazie molte
robi
-
seleziona il template dalla gestione template e assegnalo alle voci di menu che sono nell'area riservata.
Per ogni profilo utente a meno di non avere un componente ACL installato e settato non credo ci riucirai. Considera comunque la pesantezza di dover gestire decine se non centinaia di template.
-
Ciao,
grazie per la risposta
in realtà la mia situazione è tipo, per intenderci, internet/intranet e la parte ad accesso riservato è un sottoinsieme dell’intero sito. Quello che vorrei poter fare è modificare il template non tanto su alcuni ‘pezzi’ del sito quanto all’intero sito sulla condizione loggato/non loggato.
Per quanto riguarda gli utenti mi sono spiegato male, non intendevo i singoli utenti ma template diversi in funzione del Gruppo assegnato (Author, Editor, Publisher …).
Immagino che comunque sia necessario un ACL. E visto che ci sono avete da suggerirmi un buon ACL che può risolvere i miei probblemi?
-
non intendevo i singoli utenti ma template diversi in funzione del Gruppo assegnato (Author, Editor, Publisher …).
Immagino che comunque sia necessario un ACL.
dubito che un acl possa servirti..
i template si assegnano a voci di menù e non ad utenti e neanche a gruppi di utenti.
forse se ti sposti nella sezione template del forum e spieghi per bene, con parole tue cosa desideri di preciso è meglio..
-
opss!
scusate non avevo visto la sezione dedicata ai template
che faccio apro un altro 3d o spostate l'intera discussione?
-
Te la sposto io crobi.
buona fortuna!
-
mi viene in mente un procedimento alquanto contorto :D
crea una voce di menu solo per utenti registrati
questa voce linka non ad un componente o un articolo ma ad un sito completamente nuovo che utilizza lo stesso database utenti del precedente.
Imposti che dopo il login l'utente viene reindirizzato a questa voce menu e quindi a questo sito nuovo.
Potrei aver sparato una grande cazzata (anzi quasi sicuramente :D ) ma non si sai mai, magari varrebbe la pena provare
-
mi viene in mente un procedimento alquanto contorto :D
crea una voce di menu solo per utenti registrati
questa voce linka non ad un componente o un articolo ma ad un sito completamente nuovo che utilizza lo stesso database utenti del precedente.
Imposti che dopo il login l'utente viene reindirizzato a questa voce menu e quindi a questo sito nuovo.
Potrei aver sparato una grande cazzata (anzi quasi sicuramente :D ) ma non si sai mai, magari varrebbe la pena provare
In realtà non è un'idea in sè malsana. Ma un pochino "pesante" diciamo. Se in vece di questo il nostro amico creasse un'area riservata alla quale accedere dopo login? E se quest'area avesse un template nuovo? Il template sarebbe associato ad un menu utente visibile solo dopo login e quindi riservato alla stretta cerchia di adepti che lui considera.
-
grazie per i contributi!
francamente pensavo fosse meno tortuoso
infondo volevo solo variare un po' le tonalità dell'header per dare visibilità all'utente di essere loggato (non so a questo punto se ne vale la pena)
ma ci proverò comunque
grazie ancora
crobi
-
Ciao a tutti,
per prima cosa vorrei ringraziare questo forum per i tanti suggerimenti e consigli utili, spero di poter dare un contributo sensato con questo post.
Suggerisco di identificare la tabella del database che contiene l'informazione cercata (es: l'id utente e il gruppo di appartenenza) e poi inserire nell'index.php del template una porzione di codice che controlla il valore di quel campo e cambia lo sfondo di conseguenza.
Nel caso di Crobi l'informazione dovrebbe essere nel campo "usertype" della tabella "jos_users"
Provo ad inserirvi un pezzo di codice di esempio (è un mio codice modificato al momento e da me funziona, l'importante è inserire nei punti che ho segnalato il percorso allo sfondo corretto e, ovviamente, il nome corretto del div che contiene l'header... io ho messo div#header).
Il risultato è che tutti gli utenti hanno lo sfondo2 tranne i Registered che avranno lo sfondo1.
<?php
// no direct access
defined('_JEXEC') or die('Restricted access');
jimport('joomla.base.tree');
jimport('joomla.utilities.simplexml');
$database = & JFactory::getDBO();
$my = JFactory::getUser();
$usertype = 'unregistered';
if ($my->id != 0)
{
// Esiste un utente autenticato. Interrogo il DB e cerco il campo "usertype" che è quello che mi interessa
$query = "SELECT usertype FROM jos_users WHERE id=$my->id";
$database->setQuery($query);
$usertype = $database->loadResult();
}
// se usertype è uguale a Registered imposto lo sfondo scuro (background1.jpg)
if ($usertype == 'Registered')
{ echo ('<style type="text/css">body#page_bg{background: black; color: black;} div#header {background:url(http://www.TUOSITO_PERCORSO_ALLA_TUA_IMMAGINE_DI_SFONDO1.jpg)}"></style>');
}
// in tutti gli altri casi imposto il background2.jpg
else
{echo ('<style type="text/css">body#page_bg{background: black; color: black;} div#header {background:url(http://www.TUOSITO_PERCORSO_ALLA_TUA_IMMAGINE_DI_SFONDO2.jpg)}"></style>');
}
?>
Un'annotazione: non ho inserito il codice direttamente nell'index.php ma l'ho messo in un file a parte e poi richiamato nell'<head> di index.php con un include:
<?php
include("____PERCORSO___Nomefile.php");
?>
-
<?php
// no direct access
defined('_JEXEC') or die('Restricted access');
jimport('joomla.base.tree');
jimport('joomla.utilities.simplexml');
$database = & JFactory::getDBO();
$my = JFactory::getUser();
$usertype = 'unregistered';
if ($my->id != 0)
{
// Esiste un utente autenticato. Interrogo il DB e cerco il campo "usertype" che è quello che mi interessa
$query = "SELECT usertype FROM jos_users WHERE id=$my->id";
$database->setQuery($query);
$usertype = $database->loadResult();
}
// se usertype è uguale a Registered imposto lo sfondo scuro (background1.jpg)
if ($usertype == 'Registered')
{ echo ('<style type="text/css">body#page_bg{background: black; color: black;} div#header {background:url(http://www.TUOSITO_PERCORSO_ALLA_TUA_IMMAGINE_DI_SFONDO1.jpg)}"></style>');
}
// in tutti gli altri casi imposto il background2.jpg
else
{echo ('<style type="text/css">body#page_bg{background: black; color: black;} div#header {background:url(http://www.TUOSITO_PERCORSO_ALLA_TUA_IMMAGINE_DI_SFONDO2.jpg)}"></style>');
}
?>
Ciao! il codice che hai postato è molto interessante e riguarda una cosa che cercavo da tempo: le variabili in Joomla (nonché l'interrogazione del db per prendere dati utili).
Sto cercando di capire come adattare il tuo codice alle mie esigenze, spero risponderai (o comunque chiunque possa darmi una mano).
In pratica vorrei che in una determinata sezione (e categoria, una volta capito il metodo) mi visualizzasse una data immagine.
La cosa dovrebbe essere più semplice perché nel mio caso non devo interrogare il db, piuttosto dovrei solo prendere il nome della sezione visualizzata.
la domanda è: qual è la variabile giusta?
ho provato con
<?php
$doc =& JFactory::getDocument();
$nome = $doc->getTitle();
?>;
ma mi viene restituito solo il titolo della pagina, quindi il nome di ogni singolo articolo all'interno della sezione o categoria...
-
Per ricavare l'id della categoria (e di conseguenza il nome, interagendo col db), il mioglior modo è utilizzare JRequest per ottenere dall'URL l'id della categoria? oppure esiste una via più semplice e diretta?
-
ciao,
ho trovato una discussione qui (in Inglese):
http://forum.joomla.org/viewtopic.php?f=466&t=302292
Anche qui si chiedono se la cosa sia fattibile senza interrogare il db ma parrebbe di no (anche a me d'altro canto sembra strano)
La questione interessa molto anche me e magari nel weekend provo a metterci mano.
Ah, guardate anche questo modulo: http://flexheader2.andrehotzler.de/
non mi fa impazzire ma lo sto usando per cambiare le immagini pagina per pagina
-
Grazie elettra.d!
Io sono impazzito per inserire al mio div centrato con il contenuto, un div contenente alcune informazioni solo per gli utenti registrati... è bastato seguire le tue informazioni ed indicare l'attributo float:left per gli utenti registrati e... tutto va alla grande! Grazie!
-
Mi allaccio a questo post perchè credo di avere un problema simile:
Sotto il "menù utente", accessibile dopo la login, vorrei creare un link personalizzato a seconda del nuovo utente.
Mi spiego meglio con un esempio:
dopo la login, nel menù utente appariranno una serie di link. Il link "foto", ad esempio, dovrebbe linkare alla foto di ogni singolo utente.
Quindi l'utente PIPPO, cliccando su "foto" vedrà la foto di pippo; mentre lìutente PLUTO, cliccando su "foto" vedrà la foto di pluto.
Nel mio caso specifico, mi serve per reindirizzare ogni utente verso un diverso form.
Thanks
-
Secondo me devi usare una componente per la gestione degli utenti tipo community builder o joomunity
-
Ho provato, ma non sono riuscito a fare quello che serve a me.
Ho appena provato anche il "Frontend Access Control" ma nemmeno con quest sono riuscito a fare esattamente quello che serve a me.
Nessuno che sa consigliarmi qualcosa?
Mi basterebbe anche avere delle singole voci di menù accessibili SOLO da determinati utenti, si può fare?
-
Secondo me devi usare una componente per la gestione degli utenti tipo community builder o joomunity
;)