Bueno acá les dejo un pequeño truco que implemente para mostrar las fotos en el bloque usuarios conectados y nuevos usuarios para drupal 7.
Los cambios se realizan en el archivo user.module.php del modulo user
Primero que todo debemos hacer unos cambios en hook_block_view
buscamos el case new y a la consulta agregamos la imagen del usuario quedando de la siguiente manera:
$items = db_query_range('SELECT uid, name, picture FROM {users} WHERE status <> 0 AND access <> 0 ORDER BY created DESC', 0, variable_get('user_block_whois_new_count', 5))->fetchAll();
como vemos agregamos después de name el campo picture
Posteriormente hacemos lo mismo con el case online
$items = db_query_range('SELECT u.name, u.uid, u.picture, MAX(s.timestamp) AS max_timestamp FROM {users} u INNER JOIN {sessions} s ON u.uid = s.uid WHERE s.timestamp >= :interval AND s.uid > 0 GROUP BY u.uid, u.name ORDER BY max_timestamp DESC', 0, $max_users, array(':interval' => $interval))->fetchAll();
Como vemos agregamos el campo u.picture
Después hacemos un pequeño cambio en la función theme_user_list
buscamos la línea que dice:
$items[] = theme('username', array('account' => $user));
Lo cambiamos por:
$items[] = theme('user_picture', array('account' => $user));
Y listo, después es solo agregar un par de estilos para mejorar la presentación.
Espero les sea de utilidad a todos
Saludos
Comments
Ok
Hola joertru,
Muy bien, pero porque realizaste los cambios en el archivo user.module.php del modulo user? ya que este es un módulo del core...
Saludos!!
Consejo
Cual es la mejor práctica para hacerlo? cual es el lugar correcto para hacerlo un nuevo módulo o en el template.php del tema.
Saludos julio gracias por el comentario
Hola. Por regla general los
Hola.
Por regla general los archivos del core de Drupal no deberian tocarse, ya que esto puede interferir al momento de realizar alguna actualización de tu sistema.
Las funcionalidades que trae drupal en sus módulos del core o inclusive funcionalidades de los módulos contribuidos se pueden extender creando tus propios módulos y utilizando los hooks.
Puedes empezar aqui:
http://drupal.org/developing/modules