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

node_menu()

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.