Make WordPress Core

Opened 8 years ago

Closed 8 years ago

#14006 closed defect (bug) (worksforme)

Admin menu additions in 3.0 (add_options_page / add_action admin_menu)

Reported by: cybersprocket Owned by:
Milestone: Priority: normal
Severity: major Version: 3.0
Component: Plugins Keywords: reporter-feedback
Focuses: Cc:


We have a series of plugins using the same base class (different instantiations of course). Adding our settings page to the Admin/Settings sidebar menu works fine up until 2.9.2, in 3.0 this no longer works.

We are still trying to determine if it is a problem with add_options_page() or add_action('admin_menu','funcname').

With a clean install of 2.9.2 and the same plugin codebase, both plugins appear on the sidebar menu. With a clean install of 3.0, only the last plugin loaded appears on the sidebar menu. Both plugins are activated but only ONE shows up and the options page can only be accessed for the one that shows up in the menu. De-activate either and the active one appears and work fine.

What we know so far:

  • It appears that admin_init is called for each instantiated object that we are trying to setup.
  • The setting_page_<plugin-prefix-here> call only happens for the last object to have been loaded.

I do have a development server I can provide access to, as well as a staging server on 2.9.2 if a bona-fide WordPress developer wants to dig around the code with us. I can also provide our plugin code via git repo or will package it up into a .zip format if requested.

In the meantime I'll try to find a fix & will provide more details as we go through our discovery process.

Change History (3)

#1 @dd32
8 years ago

Can you please post some code to highlight the bug?

#2 @nacin
8 years ago

  • Keywords reporter-feedback added; add_options_page add_action admin_menu classes removed
  • Priority changed from high to normal

#3 @nacin
8 years ago

  • Milestone Awaiting Review deleted
  • Resolution set to worksforme
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.