function node_view in Drupal 7
Same name and namespace in other branches
- 8 core/modules/node/node.module \node_view()
- 4 modules/node.module \node_view()
- 5 modules/node/node.module \node_view()
- 6 modules/node/node.module \node_view()
Generates an array for rendering the given node.
Parameters
$node: A node object.
$view_mode: View mode, e.g. 'full', 'teaser'...
$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().
14 calls to node_view()
- book_node_export in modules/
book/ book.module - Generates printer-friendly HTML for a node.
- comment_preview in modules/
comment/ comment.module - Generate a comment preview.
- comment_reply in modules/
comment/ comment.pages.inc - This function is responsible for generating a comment reply form. There are several cases that have to be handled, including:
- FieldUIManageDisplayTestCase::assertNodeViewTextHelper in modules/
field_ui/ field_ui.test - Asserts that a string is (not) found in the rendered nodein a view mode.
- ImageFieldDefaultImagesTestCase::testDefaultImages in modules/
image/ image.test - Tests CRUD for fields and fields instances with default images.
1 string reference to 'node_view'
- trigger_node_view in modules/
trigger/ trigger.module - Implements hook_node_view().
File
- modules/
node/ node.module, line 1330 - The core that allows content to be submitted to the site. Modules and scripts may programmatically submit nodes using the usual form API pattern.
Code
function node_view($node, $view_mode = 'full', $langcode = NULL) {
if (!isset($langcode)) {
$langcode = $GLOBALS['language_content']->language;
}
// Populate $node->content with a render() array.
node_build_content($node, $view_mode, $langcode);
$build = $node->content;
// We don't need duplicate rendering info in node->content.
unset($node->content);
$build += array(
'#theme' => 'node',
'#node' => $node,
'#view_mode' => $view_mode,
'#language' => $langcode,
);
// Add contextual links for this node, except when the node is already being
// displayed on its own page. Modules may alter this behavior (for example,
// to restrict contextual links to certain view modes) by implementing
// hook_node_view_alter().
if (!empty($node->nid) && !($view_mode == 'full' && node_is_page($node))) {
$build['#contextual_links']['node'] = array(
'node',
array(
$node->nid,
),
);
}
// Allow modules to modify the structured node.
$type = 'node';
drupal_alter(array(
'node_view',
'entity_view',
), $build, $type);
return $build;
}