how to retrieve menu id related to page

brofield

Don't pass in particular numbers if there is a define for it. You are actually calling
show_menu2(SM2_ALLMENU, ...);
That will display every menu that is defined. Not what it sounds like you wanted.

It sounds like you want this.
show_menu2(0, ...);
Which will display the default menu (i.e. current menu) for the current page.

current page id is PAGE_ID
menu id for the current page is found like:
$aMenu = $wb->page['menu'] == '' ? 1 : $wb->page['menu'];

B

acavacini

hi,

after many attempts i solved using

show_menu2(-1,...);

the documentation was unhelpful in this case  :-(

anyway thanks for the suggestion  :wink:

ruebenwurzel

Hello,

there is no need for changing core files to get the menu_id or page_id for show_menu2, as this is already included in the show_menu2 files. Please read the docu wich comes with the modul.

Matthias

acavacini

#1
hi,
if you need to retrive the menu id releated to your page

add this code to frontend.function.php file

if (!function_exists('get_menu_id')) {
            function get_menu_id() {
               global $wb, $database;
               $page_id = $wb->page_id;
          $get_menu_id = $database->get_one("SELECT menu FROM ".TABLE_PREFIX."pages WHERE page_id = ". $page_id ." Limit 1;");
               return $get_menu_id;
       }
}


and now call get_menu_id() from your page.

useful with show_menu2

seeU  :-P