Ciao a tutti.
Sto cercando di personalizzare la pagina del profilo in base al ruolo. Diciamo che esiste un ruolo "visitatore" che vorrei avesse, nel suo profilo, delle views. Ora, esistendo anche altre tipologie di user, non posso modificare il template user.tpl.php perché altrimenti andrei a toccare anche gli altri profili. Ho visto che esiste questo modulo (Role Theme Switcher), ma con questo cambierei il tema dell'intero sito in base al ruolo. Io vorrei cambiare la sola pagina dell'user...
Avete qualche consiglio?
Dubbio su customizzazione profilo user
Lun, 18/07/2011 - 15:11
#1
Dubbio su customizzazione profilo user
Forse dovrei usare Content Profile che mi darebbe la possibilità di creare un node-TIPOPROFILO.tpl.php e inserire all'interno le views che mi interessano.
Sarebbe ottima come soluzione (d'altronde uso questo modulo anche per altri tipi di profili) ma vorrei capire e risolvere una cosa. Se ad un utente è associato un content profile (Use this content type as a content profile for users) comunque il profilo di default (quello in user/3 ad esempio, con la history, il link "View" e "Edit") resta visibile. Esiste un modo per cancellare questa pagina?
Potrei così aggiungere i seguenti link nel sito:
- "Il mio profilo" (link al content profile)
- e un "Dati personali", che sarebbe un link all'interno del content profile che mi indirizza nella pagina "Edit" del profilo di default (quella in cui c'è la mail e il cambio password)
Non capisco se sia l'approccio giusto. Voi come vi comportate nella personalizzazione del profilo?
Puoi modificare user.tpl.php e mettere un if o case controllando il ruolo.
Per la seconda domande resta visibile ovviamente, per cancellarla basta che modifichi il template del profilo nascondendo quei campi.
http://www.chromeos.eu
Ok, penso di aver risolto. Ho creato un file user-profile.tpl.php con questo codice:
<?php
$user_obj = user_load(arg(1));
if (in_array('visitatore', $user_obj->roles)) { ?>
/* quello che si vuole inserire */
<?php }
else { ?>
<?php print $user_profile; ?>
<?php }
In questo modo si riesce a personalizzare il profilo di default in base al ruolo (nell'esempio, il ruolo è "visitatore"). Resta però il problema delle tab che sono visibili di default, cioè View e Edit. Se volessi cambiargli il nome e tematizzarle (solo a livello grafico)? Qualche idea?
Ciao, installa i moduli devel e devel_themer. Abilitali entrambi e ti comparirà (in basso a destra) un checkbox per attivare sulla pagina devel_themer. Attivalo, spostati con il mouse su View ed Edit e clicca. Ti verranno fornite tutte le informazioni utili di cui hai bisogno.
M.
--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal
Ok, questi due moduli già li uso. Quindi mi muovo come al solito nel template.php. In effetti la risposta già la conoscevo!
Quello che mi premeva era più che altro sentire dai più esperti il modus operandi della personalizzazione. Non capisco se sia meglio usare un modulo, agire nel template.php e, in questo caso, se usare:
- MIOTEMA_elemento()
- phptemplate_elemento()
- theme_elemento()
http://www.chromeos.eu