получение URL-адреса фотографии или изображения пользователя
Я пытаюсь получить фотографию вошедших в систему пользователей, чтобы создать приветственный блок. я применил код, который не работает
$userphoto = $user->picture;
Итак, что делать, чтобы получить URL-адрес фотографии пользователя или изображения, есть идеи?
3 answers
Свойство picture
сущности пользователя - это идентификатор файла (ссылка на столбец fid
в таблице file_managed
).
Вы можете загрузить файл явно с помощью file_load()
вот так:
$file = file_load($user->picture);
И визуализируйте его в изображение с помощью theme_image()
:
$image = theme('image', array(
'path' => $file->uri,
'alt' => 'Some alt',
// etc...
));
В качестве альтернативы вы могли бы обойтись без вышеперечисленного и просто использовать удобный theme_user_picture()
функция:
$image = theme('user_picture', array('account' => $account));
Возможно, полезно визуализировать с помощью стилей изображения
Image_style_url('my_image_style', $пользователь->картинка['uri']);
Второй параметр - это внутренний путь к файлу drupal, например "общедоступный://изображения/myimage.png"
Вы можете попробовать следующее:
$user = user_load($view->result[$key]->uid);
$filepath = $user->picture->uri;
$picture_url = file_create_url($filepath);
Это даст вам URL-адрес изображения пользователя.