Generate an array for rendering the given user.
When viewing a user profile, the $page array contains:
To theme user profiles, copy modules/user/user-profile.tpl.php to your theme directory, and edit it as instructed in that file's comments.
$account: A user object.
$view_mode: View mode, e.g. 'full'.
$langcode: (optional) A language code to use for rendering. Defaults to the global content language of the current request.
An array as expected by drupal_render().
function user_view($account, $view_mode = 'full', $langcode = NULL) {
if (!isset($langcode)) {
$langcode = $GLOBALS['language_content']->language;
}
// Retrieve all profile fields and attach to $account->content.
user_build_content($account, $view_mode, $langcode);
$build = $account->content;
// We don't need duplicate rendering info in account->content.
unset($account->content);
$build += array(
'#theme' => 'user_profile',
'#account' => $account,
'#view_mode' => $view_mode,
'#language' => $langcode,
);
// Allow modules to modify the structured user.
$type = 'user';
drupal_alter(array(
'user_view',
'entity_view',
), $build, $type);
return $build;
}