We have several plugins (MoneyPress : CafePress Edition, eBay Edition, and Commission Junction Edition) that are all migrating to use the same base classes with different data drivers.
The problem is that because we are using classes v. “flat” code we now use array($this,’funcname’) to setup the add_options_page() that adds our plugin settings hook to the admin panel sidebar menu.
This works 100% fine in 2.9.2.
In 3.0 the sidebar admin panel only shows ONE of the settings pages if we happen to install more than 1 plugin that uses the same base class.
Yes, we have checked to ensure the classes are instantiated correctly. It appears to be a bug deep inside 3.0 either on the add_action(‘admin_menu’, array($this,’create_option_page’)) call or in the add_options_page(blah,blah,blah,array($this, ‘render_options_page’)) call.
We’re getting ready to submit to Trac now that we’ve ruled out our own code bugs. Like I said, a clean 2.9.2 install with our plugins works perfectly. Same setup with a clean 3.0 install does not.