Drupal: accede a $ profile desde un bloque
-
22-07-2019 - |
Pregunta
Estoy tratando de que el avatar (imagen de perfil) ubicado en la matriz $ profile aparezca en un BLOQUE. La variable $ profile no es accesible desde bloques. Su alcance solo está en ese archivo real user-profile.tpl.php. Entonces ... ¿alguien sabe cómo puedo ejecutar algo como esto:
print $profile[user_picture];
en un drupal BLOCK?
Solución
Pensé que podría publicarlo aquí también. Vea mi segundo comentario sobre el primer hilo en esta discusión. A continuación se muestra mi código que utilicé con INSERT VIEW para obtener lo que quería:
<?php
$profileUser = "";
if (arg(0) == "user") {
$profileUser = arg(1);
}
// removed some other checks i do to populate $profileUser
?>
[view:VIEWED_PROFILE_AVATAR=block=<?php print $profileUser; ?>]
Espero que eso ayude a alguien.
Otros consejos
Puede intentar usar el siguiente código en un nuevo bloque ( admin / build / block / add
):
<?php
global $user;
$output = theme_image($user->picture, $alt = 'user pic', $title = 'user pic');
print $output;
Esto le da acceso a la variable global $ user
y luego puede usar la propiedad de imagen para obtener la URL de la imagen de perfil del usuario actual.