diff --git a/src/Plugin/Block/MenuBlock.php b/src/Plugin/Block/MenuBlock.php
index cb4f14d..1978707 100644
--- a/src/Plugin/Block/MenuBlock.php
+++ b/src/Plugin/Block/MenuBlock.php
@@ -132,6 +132,13 @@ class MenuBlock extends SystemMenuBlock {
       ],
     ];
 
+    $form['advanced']['show_parent'] = [
+      '#type' => 'checkbox',
+      '#default_value' => empty($config['show_parent']) ? 0 : $config['show_parent'],
+      '#title' => $this->t('<strong>Include parent item</strong>'),
+      '#description' => $this->t('The parent item is normally excluded from the menu tree. If checked, the selected parent item will be included.'),
+    ];
+
     $form['style'] = [
       '#type' => 'details',
       '#title' => $this->t('HTML and style options'),
@@ -206,6 +213,7 @@ class MenuBlock extends SystemMenuBlock {
     $this->configuration['depth'] = $form_state->getValue('depth');
     $this->configuration['expand'] = $form_state->getValue('expand');
     $this->configuration['parent'] = $form_state->getValue('parent');
+    $this->configuration['show_parent'] = $form_state->getValue('show_parent');
     $this->configuration['suggestion'] = $form_state->getValue('suggestion');
     $this->configuration['label_type'] = $form_state->getValue('label_type');
     $this->configuration['label_link'] = $form_state->getValue('label_link');
@@ -223,6 +231,7 @@ class MenuBlock extends SystemMenuBlock {
     $depth = $this->configuration['depth'];
     $expand = $this->configuration['expand'];
     $parent = $this->configuration['parent'];
+    $show_parent = $this->configuration['show_parent'];
     $follow = $this->configuration['follow'];
     $follow_parent = $this->configuration['follow_parent'];
     $following = FALSE;
@@ -275,14 +284,65 @@ class MenuBlock extends SystemMenuBlock {
 
     // When a fixed parent item is set, root the menu tree at the given ID.
     if ($fixed_parent_menu_link_id) {
+      // Exclude the root parent item from the tree.
+       if (empty($show_parent)) {
+          $parameters->setRoot($fixed_parent_menu_link_id);
+       }
+
+        // Include the parent root item in the tree.
+        else {
+  
+          // Create the anonymous function which will be used for search.
+          /**
+           * Recursive search function to find a key match for $uuid_search_key.
+           *
+           * @param $tree_level
+           *    The tree to search.
+           *
+           * @param $uuid_search_key
+           *    The menu UUID search to find .
+           *
+           * @return array
+           *     The found menu item with children.
+           */
+
+        $find_parent_function = function($tree_level, $uuid_search_key) use(&$find_parent_function) {
+            $search = array();
+            // Anything with a subtree is a menu item and not a match.
+            $has_subtree = !empty($tree_level->subtree);
+            $tree_to_consider = $has_subtree ? $tree_level->subtree : $tree_level;
+            if (is_array($tree_to_consider)) {
+              if (isset($tree_to_consider[$uuid_search_key])) {
+                return array_intersect_key($tree_to_consider, [$uuid_search_key => NULL]);
+              }
+  
+              foreach ($tree_to_consider as $tree_to_search) {
+                $search = $find_parent_function($tree_to_search, $uuid_search_key, $find_parent_function);
+                if ($search) {
+                  return $search;
+              }
+            }
+                    }
+          };
+  
+          // Load the full tree for searching.
+          // See @https://www.drupal.org/project/drupal/issues/2972374 for why
+          // this is necessary.
+          $tree = $this->menuTree->load($menu_name, $parameters);
+          // Search the tree for a match for $fixed_parent_menu_link_id.
+          $found_parent = $find_parent_function($tree, $fixed_parent_menu_link_id, $find_parent_function);
+          $tree =& $found_parent;
+        }
       // Clone the parameters so we can fall back to using them if we're
       // following the active menu item and the current page is part of the
       // active menu trail.
       $fixed_parameters = clone $parameters;
       $fixed_parameters->setRoot($fixed_parent_menu_link_id);
-      $tree = $this->menuTree->load($menu_name, $fixed_parameters);
-
+      
       // Check if the tree contains links.
+      if (!isset($tree)) {
+        $tree = $this->menuTree->load($menu_name, $parameters);
+      }
       if (empty($tree)) {
         // If the starting level is 1, we always want the child links to appear,
         // but the requested tree may be empty if the tree does not contain the
