diff --git a/xmlsitemap_menu/xmlsitemap_menu.module b/xmlsitemap_menu/xmlsitemap_menu.module index f0ba9e2..b9b1dca 100644 --- a/xmlsitemap_menu/xmlsitemap_menu.module +++ b/xmlsitemap_menu/xmlsitemap_menu.module @@ -262,6 +262,17 @@ function xmlsitemap_menu_create_link(array $menu_item) { $menu_item['xmlsitemap']['access'] = $menu_item['access'] && !$menu_item['external'] && !$menu_item['hidden']; $menu_item['xmlsitemap']['language'] = isset($menu_item['options']['langcode']) ? $menu_item['options']['langcode'] : LANGUAGE_NONE; + // Exclude menu items created for nodes that are added to the sitemap by xmlsitemap_node + if ($menu_item['xmlsitemap']['access'] && $menu_item['router_path'] == 'node/%' && module_exists('xmlsitemap_node')) { + $node = node_load(substr($menu_item['link_path'], 5)); + if (empty($node->xmlsitemap)) { + xmlsitemap_node_create_link($node); + } + if ($node->xmlsitemap['status'] && $node->xmlsitemap['access']) { + $menu_item['xmlsitemap']['status'] = FALSE; + } + } + return $menu_item['xmlsitemap']; }