Skip to content

Instantly share code, notes, and snippets.

@kwcjr
Last active November 7, 2021 20:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kwcjr/88c18ee92fe74cb636e8e4b79a44f85f to your computer and use it in GitHub Desktop.
Save kwcjr/88c18ee92fe74cb636e8e4b79a44f85f to your computer and use it in GitHub Desktop.
Create custom MainWP menu items.
/**
* MainWP Custom Menu.
* Add a custom menu/submenu to the MainWP Dashboard main menu.
*
* Filter Hook: mainwp_main_menu
* Source: https://mainwp.dev/hooks/mainwp_main_menu/
*
* Filter Hook: mainwp_main_menu_submenu
* Source: https://mainwp.dev/hooks/mainwp_main_menu_submenu/
**/
/**
* Build Top Level menu array & merge into MainWP $left_menu array.
*
* Example:
* // Top Level Menu item.
* $additional_menu = array(
* 'Extras', // Label.
* 'extras-menu', // Slug.
* 'https://ads.google.com/' // href.
* );
* $left_menu['mainwp_tab'][] = $additional_menu;
* $left_menu['mainwp_tab'] = array_merge( $left_menu['mainwp_tab'], $sub_menu_after );
**/
function mycustom_mainwp_main_menu( $left_menu ) {
// Order to place menu item.
$index = 0;
$sub_menu_after = array_splice( $left_menu['mainwp_tab'], $index );
// Top Level Menu item.
$additional_menu = array(
'Extras',
'extras-menu',
'https://ads.google.com/'
);
$left_menu['mainwp_tab'][] = $additional_menu;
$left_menu['mainwp_tab'] = array_merge( $left_menu['mainwp_tab'], $sub_menu_after );
// Return altered $left_menu array.
return $left_menu;
} add_filter( 'mainwp_main_menu', 'mycustom_mainwp_main_menu', 10, 1 );
/**
* Build Submenu Item & merge into MainWP $left_submenu array.
*
* Example:
* // Submenu Item 1.
* $additional_submenu = array(
* 'Google Adwords', // Label.
* 'https://ads.google.com/', // href.
* '', // Leave blank.
* '_blank' // Open in new tab.
* );
* $left_submenu['extras-menu'][] = $additional_submenu;
**/
function mycustom_mainwp_main_menu_submenu( $left_submenu ) {
// Submenu Item 1.
$additional_submenu = array(
'Google Adwords',
'https://ads.google.com/',
'',
'_blank'
);
$left_submenu['extras-menu'][] = $additional_submenu;
// Submenu Item 2.
$additional_submenu = array(
'Google Analytics',
'https://analytics.google.com/analytics/web/',
'',
'_blank'
);
$left_submenu['extras-menu'][] = $additional_submenu;
// Submenu Item 3.
$additional_submenu = array(
'Google Search Console',
'https://search.google.com/search-console/',
'',
'_blank'
);
$left_submenu['extras-menu'][] = $additional_submenu;
// Return altered left submenu.
return $left_submenu;
} add_filter( 'mainwp_main_menu_submenu', 'mycustom_mainwp_main_menu_submenu', 10, 1 );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment