Change record status: 
Project: 
Introduced in branch: 
8.x
Description: 

In Drupal 7, the node_add() function would take the machine name, for example:

module_load_include('inc', 'node', 'node.pages');
node_add('article');

However, node_add() is used only as a menu callback, and never called directly.
If you needed to do so, you would do this:

module_load_include('inc', 'node', 'node.pages');
node_add(node_type_load('article'));

In Drupal 8, it expects a fully loaded node type object. This is done automatically with the menu loader:

$items['node/add/%node_type'] = array(
  'title callback' => 'node_type_get_clean_name',
  'title arguments' => array(2),
  'page callback' => 'node_add',
  'page arguments' => array(2),
  'access callback' => 'node_access',
  'access arguments' => array('create', 2),
  'description callback' => 'node_type_get_description',
  'description arguments' => array(2),
  'file' => 'node.pages.inc',
);

which calls node_type_load().

Also node_type_get_description() and node_type_get_clean_name() have been added as helper functions.

Impacts: 
Module developers
Updates Done (doc team, etc.)
Online documentation: 
Not done
Theming guide: 
Not done
Module developer documentation: 
Not done
Examples project: 
Not done
Coder Review: 
Not done
Coder Upgrade: 
Not done
Other: 
Other updates done