diff --git a/core/modules/node/src/Controller/NodeController.php b/core/modules/node/src/Controller/NodeController.php
index edb5682..1e6c05a 100644
--- a/core/modules/node/src/Controller/NodeController.php
+++ b/core/modules/node/src/Controller/NodeController.php
@@ -76,8 +76,13 @@ public function addPage() {
 
     $content = array();
 
+    $node_types = $this->entityManager()->getStorage('node_type')->loadMultiple();
+    // Sort the entities using the entity class's sort() method.
+    // See \Drupal\Core\Config\Entity\ConfigEntityBase::sort().
+    uasort($node_types, array($this->entityManager()->getDefinition('node_type')->getClass(), 'sort'));
+
     // Only use node types the user has access to.
-    foreach ($this->entityManager()->getStorage('node_type')->loadMultiple() as $type) {
+    foreach ($node_types as $type) {
       $access = $this->entityManager()->getAccessControlHandler('node')->createAccess($type->id(), NULL, [], TRUE);
       if ($access->isAllowed()) {
         $content[$type->id()] = $type;
