function user_view in Drupal 7
Same name and namespace in other branches
- 8 core/modules/user/user.module \user_view()
- 4 modules/user.module \user_view()
- 5 modules/user/user.module \user_view()
- 6 modules/user/user.pages.inc \user_view()
Generate an array for rendering the given user.
When viewing a user profile, the $page array contains:
- $page['content']['Profile Category']: Profile categories keyed by their human-readable names.
- $page['content']['Profile Category']['profile_machine_name']: Profile fields keyed by their machine-readable names.
- $page['content']['user_picture']: User's rendered picture.
- $page['content']['summary']: Contains the default "History" profile data for a user.
- $page['content']['#account']: The user account of the profile being viewed.
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.
Parameters
$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.
Return value
An array as expected by drupal_render().
1 call to user_view()
- user_view_page in modules/
user/ user.module - Page callback wrapper for user_view().
3 string references to 'user_view'
- TriggerUserTokenTestCase::testUserTriggerTokenReplacement in modules/
trigger/ trigger.test - Tests a variety of token replacements in actions.
- trigger_test_action_info in modules/
trigger/ tests/ trigger_test.module - Implements hook_action_info().
- trigger_user_view in modules/
trigger/ trigger.module - Implements hook_user_view().
File
- modules/
user/ user.module, line 2674 - Enables the user registration and login system.
Code
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;
}