diff --git a/site_map.admin.inc b/site_map.admin.inc
index eeaebbe..daecdaf 100644
--- a/site_map.admin.inc
+++ b/site_map.admin.inc
@@ -76,6 +76,12 @@ function site_map_admin_settings_form() {
     '#options' => $menu_options,
     '#multiple' => TRUE,
   );
+  $form['site_map_content']['site_map_show_menus_hidden'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Show disabled menu items'),
+    '#default_value' => variable_get('site_map_show_menus_hidden', 0),
+    '#description' => t('When enabled, hidden menu links will also be shown.'),
+  );
   if (module_exists('faq')) {
     $form['site_map_content']['site_map_show_faq'] = array(
       '#type' => 'checkbox',
diff --git a/site_map.module b/site_map.module
index 904e573..af53fea 100644
--- a/site_map.module
+++ b/site_map.module
@@ -560,7 +560,7 @@ function _site_map_menu_tree_output($tree) {
   // Pull out just the menu links we are going to render so that we
   // get an accurate count for the first/last classes.
   foreach ($tree as $data) {
-    if ($data['link']['access'] && !$data['link']['hidden']) {
+    if ($data['link']['access'] && (!$data['link']['hidden'] || variable_get('site_map_show_menus_hidden', 0))) {
       $items[] = $data;
     }
   }
