In the parent theme, the following is at the bottom of the functions.php file.

require_once(TEMPLATEPATH . '/admin/admin-menu.php');

In the child theme's function.php, this code will include the child admin panel.

require_once(STYLESHEETPATH . '/admin/admin-menu.php');

As you can see, I shouldn't use both files b/c the bottom file includes get_stylesheet_directory_uri() instead of get_template_directory_uri() for certain localized files (js, css). Thus, I need to remove the parent file from loading

I believe I need to use the remove_action hook, but I'm not sure how to do this right. Can't find a good answer on Google either.

I started writing the following in the functions.php file in my child theme, but I don't know how to write it properly.

Interesting, that's good to know. So, what you're saying is that, in both child and parent functions.php files, I should include the code you wrote above?
–
micahJul 7 '11 at 18:27

No, in the child theme you don't have to include anything but the modified file. The parent will make the locate_template call, and that call will automatically load the admin/file.php from the child instead of the parent, if the child has such a file. This is the basis for child theme file replacements, the parent makes the call, and the child can then replace specific files without any special coding at all.
–
OttoJul 7 '11 at 18:28

Wow, that's awesome. In all the reading I did about child themes, I never saw this but it's very useful and seems to work correctly for me. Thanks!
–
micahJul 7 '11 at 18:35

@Otto is there a function I can use within my child themes functions file so that I don't modify my parent themes functions file? My parent theme also has require_once( get_template_directory() . '/function-includes/theme-functions.php' ); and replacing it with locate_template works but if my client updates their theme it will overwrite this small mod. Is there any alternative?
–
AnagioFeb 16 '13 at 9:57

If the parent is written incorrectly, no amount of fiddling with the child will necessarily be able to fix it. Fix the parent, get the parent theme to have the fix in it.
–
OttoFeb 16 '13 at 10:20

Inside of the Parent Theme's \admin\admin-menu.php file, look for the function add_menu_page(). It should be wrapped in a function, and that function called in an add_action( 'admin_init', 'function-name' ) call.

You need to call remove_action( 'admin_init', 'function-name' ) for whatever that function name is.