Error message
You are browsing documentation for drupal 7.x, which is not supported anymore. Read the updated version of this page for drupal 11.x (the latest version).function node_page_default
Menu callback: Generates a listing of promoted nodes.
Return value
array An array in the format expected by drupal_render().
See also
2 string references to 'node_page_default'
- menu_test_menu in modules/
simpletest/ tests/ menu_test.module - Implements hook_menu().
- node_menu in modules/
node/ node.module - Implements hook_menu().
File
-
modules/
node/ node.module, line 2693
Code
function node_page_default () {
$select = db_select ('node', 'n')->fields ('n', array(
'nid',
'sticky',
'created',
))
->condition ('n.promote', 1)
->condition ('n.status', 1)
->orderBy ('n.sticky', 'DESC')
->orderBy ('n.created', 'DESC')
->extend ('PagerDefault')
->limit (variable_get ('default_nodes_main', 10))
->addTag ('node_access');
$nids = $select->execute ()
->fetchCol ();
if (!empty($nids)) {
$nodes = node_load_multiple ($nids);
$build = node_view_multiple ($nodes);
// 'rss.xml' is a path, not a file, registered in node_menu().
drupal_add_feed ('rss.xml', variable_get ('site_name', 'Drupal') . ' ' . t ('RSS'));
$build['pager'] = array(
'#theme' => 'pager',
'#weight' => 5,
);
drupal_set_title ('');
}
else {
drupal_set_title (t ('Welcome to @site-name', array(
'@site-name' => variable_get ('site_name', 'Drupal'),
)), PASS_THROUGH );
$default_message = '<p>' . t ('No front page content has been created yet.') . '</p>';
$default_links = array();
if (_node_add_access ()) {
$default_links[] = l (t ('Add new content'), 'node/add');
}
if (!empty($default_links)) {
$default_message .= theme ('item_list', array(
'items' => $default_links,
));
}
$build['default_message'] = array(
'#markup' => $default_message,
'#prefix' => '<div id="first-time">',
'#suffix' => '</div>',
);
}
return $build;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.