*/
function glm_side_menu() {
global $post;
- //var_dump($post->ID);
- $sideMenu = $allMenu = array();
+ $sideMenu = $allMenu = $pageMenuId = array();
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);
$sideMenu[$menu_item->menu_item_parent][] = $menu_item;
$allMenu[$menu_item->ID] = $menu_item;
if ($menu_item->object_id == $post->ID) {
- $thisPageMenuId = $menu_item->ID;
- //var_dump($thisPageMenuId);
- $thisPageMenuParent = $menu_item->menu_item_parent;
+ $pageMenuId[] = $menu_item;
}
}
- //echo '<pre>'.print_r($sideMenu, true).'</pre>';
- //echo '<pre>'.print_r($sideMenu, true).'</pre>';
+ if (count($pageMenuId) > 1) {
+ //echo '<pre>'.print_r($pageMenuId, true).'</pre>';
+ foreach ($pageMenuId as $men) {
+ if (isset($sideMenu[$men->ID]) && !empty($sideMenu[$men->ID])) {
+ $thisPageMenuId = $men->ID;
+ $thisPageMenuParent = $men->menu_item_parent;
+ }
+ }
+ } else {
+ $thisPageMenuId = $pageMenuId[0]->ID;
+ $thisPageMenuParent = $pageMenuId[0]->menu_item_parent;
+ }
// does the current page (in the menu) have sub menu items?
if (isset($sideMenu[$thisPageMenuId]) && !empty($sideMenu[$thisPageMenuId])) {
$pageHead = $allMenu[$thisPageMenuId];
$side_menu = $sideMenu[$thisPageMenuId];
- } else {
+ } else if ($thisPageMenuParent) {
$pageHead = $allMenu[$thisPageMenuParent];
$side_menu = $sideMenu[$thisPageMenuParent];
+ } else {
+ $pageHead = $allMenu[0];
+ $side_menu = $sideMenu[0];
}
}
- echo '<h1>'.$pageHead->title.'</h1>';
+ echo '<h1><a href="'.$pageHead->url.'">'.$pageHead->title.'</a></h1>';
echo '<ul>';
foreach ($side_menu as $menu_item) {
echo '<li><a href="'.$menu_item->url.'">'.$menu_item->title.'</a></li>';