0

How can I make my theme settings admin menu showing "general" as default page while keeping its menu title as "theme settings"?

I mean at the moment I got this using add_menu_page and add_submenu_page:

enter image description here

But I want to have "general"... I am struggling to figure this out... Is it not possible?

4
  • Have a look at [this] (wordpress.stackexchange.com/a/65822/134934) , Some guy used hooks on wp-admin.php to redirect to desired page Commented Jan 15, 2018 at 22:50
  • I am not sure how doing this I would be able to change the title to "general", and without get duplicated pages...
    – neoDev
    Commented Jan 15, 2018 at 23:00
  • So when someone clicks on the "Theme settings" (with the cog icon) you want them to be on "General" page - where the red arrow points on your image?
    – Greg36
    Commented Jan 16, 2018 at 2:10
  • @Greg36 yes. This is what I am trying to have.
    – neoDev
    Commented Jan 16, 2018 at 14:52

1 Answer 1

0

You need to create a submenu page with the same slug as the menu page. E.g.

$menu_slug = "my_menu_slug";
$desired_capability = "manage_options"; //Or whatever you need
$menu_page_callback = "menu_page_callback_function";

add_menu_page(
    "Page Title", 
    "Menu Title", 
    $desired_capability, 
    $menu_slug, 
    $menu_page_callback
);

add_submenu_page(
    $menu_slug, 
    "Submenu Page Title", 
    "Submenu Menu Title",
    $desired_capability, 
    $menu_slug, 
    $menu_page_callback
);
//Note, the 5th and 6th parameters here are the same as above. This 
//overrides the first submenu title. Now clicking the 
//menu title and the first submenu item will navigate to the same page, 
//generated by the menu_page_callback function.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.