Make WordPress Core

Ticket #18857: 18857.2.diff

File 18857.2.diff, 1.5 KB (added by davilera, 8 years ago)
  • src/wp-admin/includes/plugin.php

     
    11331133
    11341134        $menu_slug = plugin_basename( $menu_slug );
    11351135
    1136         $admin_page_hooks[ $menu_slug ] = sanitize_title( $menu_title );
     1136        $admin_page_hooks[ $menu_slug ] = $menu_slug;
    11371137
    11381138        $hookname = get_plugin_page_hookname( $menu_slug, '' );
    11391139
  • tests/phpunit/tests/admin/includesPlugin.php

     
    5757                wp_set_current_user( $current_user );
    5858        }
    5959
     60        function test_sub_menu_page_hookname_should_include_parent_menu_slug() {
     61
     62                $parent_menu_slug = 'mt-top-level';
     63                $child_menu_slug = 'sub-page';
     64
     65                add_menu_page( 'Test Toplevel', 'Test Toplevel', 'manage_options', $parent_menu_slug, 'mt_toplevel_page' );
     66                add_submenu_page( 'mt-top-level-handle', 'Test Sublevel', 'Test Sublevel', 'manage_options', $child_menu_slug, 'mt_sublevel_page' );
     67
     68                $child_menu_hookname = get_plugin_page_hookname( $child_menu_slug, $parent_menu_slug );
     69                $this->assertEquals( $child_menu_hookname, "${parent_menu_slug}_page_${child_menu_slug}" );
     70
     71        }
     72
    6073        function test_is_plugin_active_true() {
    6174                activate_plugin( 'hello.php' );
    6275                $test = is_plugin_active( 'hello.php' );