From a781e32457ab648da491b9f7c71c75ac03b5c69d Mon Sep 17 00:00:00 2001 From: Anthony Talarico Date: Thu, 27 Oct 2016 09:10:06 -0400 Subject: [PATCH] removing side menu from interior pages in the top bar main nav item does not have a sub menu --- lib/navigation.php | 152 ++++++++++++++++++++++----------------------- 1 file changed, 73 insertions(+), 79 deletions(-) diff --git a/lib/navigation.php b/lib/navigation.php index 6a2d933..522afe6 100644 --- a/lib/navigation.php +++ b/lib/navigation.php @@ -187,93 +187,87 @@ function glm_get_menu_options() function glm_side_menu($mobile = false) { global $post; $sideMenu = $allMenu = $pageMenuId = array(); -// do not use appearance menu for the following page ID's or their ancestors - //if( !is_page(array(3200, 3201,3202,3203)) && !is_in_tree(3200) && !is_in_tree(3201) && !is_in_tree(3202) && !is_in_tree(3203)) { - if (is_in_tree(get_option('glm_members_database_option_members_only_id'))) { - if (($locations = get_nav_menu_locations()) && isset($locations['members-only'])) { - $menu = wp_get_nav_menu_object($locations['members-only']); - } - } else if( !is_in_tree(3200) && !is_in_tree(3201) && !is_in_tree(3202) && !is_in_tree(3203)) { - if (($locations = get_nav_menu_locations()) && isset($locations['top-bar'])) { - $menu = wp_get_nav_menu_object($locations['top-bar']); - } - } else { - if (($locations = get_nav_menu_locations()) && isset($locations['top-links'])) { - $menu = wp_get_nav_menu_object($locations['top-links']); - } + + if (($locations = get_nav_menu_locations()) && isset($locations['top-bar'])) { + $menu = wp_get_nav_menu_object($locations['top-bar']); } - $menu_items = wp_get_nav_menu_items($menu->term_id); - foreach ((array) $menu_items as $key => $menu_item) { - $sideMenu[$menu_item->menu_item_parent][] = $menu_item; - $allMenu[$menu_item->ID] = $menu_item; - if ($menu_item->object_id == $post->ID) { - $pageMenuId[] = $menu_item; - } + + $menu_items = wp_get_nav_menu_items($menu->term_id); + foreach ((array) $menu_items as $key => $menu_item) { + $sideMenu[$menu_item->menu_item_parent][] = $menu_item; + $allMenu[$menu_item->ID] = $menu_item; + if ($menu_item->object_id == $post->ID) { + $pageMenuId[] = $menu_item; } - if (count($pageMenuId) > 1) { - $thisPageMenuId = (isset($pageMenuId[1])) ? $pageMenuId[1]->ID : 0; - $thisPageMenuParent = (isset($pageMenuId[1])) ? $pageMenuId[1]->menu_item_parent : 0; - foreach ($pageMenuId as $men) { - if (isset($sideMenu[$men->ID]) && !empty($sideMenu[$men->ID])) { - $thisPageMenuId = $men->ID; - $thisPageMenuParent = $men->menu_item_parent; - } + } + if (count($pageMenuId) > 1) { + $thisPageMenuId = (isset($pageMenuId[1])) ? $pageMenuId[1]->ID : 0; + $thisPageMenuParent = (isset($pageMenuId[1])) ? $pageMenuId[1]->menu_item_parent : 0; + foreach ($pageMenuId as $men) { + if (isset($sideMenu[$men->ID]) && !empty($sideMenu[$men->ID])) { + $thisPageMenuId = $men->ID; + $thisPageMenuParent = $men->menu_item_parent; } - } else { - $thisPageMenuId = (isset($pageMenuId[0])) ? $pageMenuId[0]->ID : 0; - $thisPageMenuParent = (isset($pageMenuId[0])) ? $pageMenuId[0]->menu_item_parent : 0; - } - // does the current page (in the menu) have sub menu items? - if (isset($sideMenu[$thisPageMenuId]) && !empty($sideMenu[$thisPageMenuId])) { - $pageHead = (isset($allMenu[$thisPageMenuId])) ? $allMenu[$thisPageMenuId] : (object) array('url' => '', 'target' => '', 'title' => ''); - // get the subs for $thisPageMenuId - $subs = $sideMenu[$thisPageMenuId]; - // If the first element is title [Tabs] then this is a uber menu - // custom item and we need to get the subs under that menu item - // instead ($sideMenu[$subs[0]->ID]) - // if ($subs[0]->title == '[Tabs]') { - // $subs = $sideMenu[$subs[0]->ID]; - // } - if ($subs[0]->title == 'Test') { - $subs = $sideMenu[$subs[0]->ID]; - } - } else if ($thisPageMenuParent) { - $pageHead = $allMenu[$thisPageMenuParent]; - // get the subs for $thisPageMenuParent - $subs = $sideMenu[$thisPageMenuParent]; - } else { - $pageHead = (isset($allMenu[0])) ? $allMenu[0] : (object) array('url' => '', 'target' => '', 'title' => ''); - // get Main level - $subs = $sideMenu[0]; } - - if ($mobile) { - echo '