WordPress.org

Make WordPress Core

Ticket #19131: 19131.3.diff

File 19131.3.diff, 2.2 KB (added by nacin, 9 years ago)
  • wp-admin/includes/screen.php

     
    399399                if ( is_a( $hook_name, 'WP_Screen' ) )
    400400                        return $hook_name;
    401401
    402                 $action = $post_type = $taxonomy = '';
     402                $action = $post_type = $taxonomy = null;
    403403                $is_network = $is_user = false;
    404404
    405405                if ( $hook_name )
     
    447447
    448448                // If this is the current screen, see if we can be more accurate for post types and taxonomies.
    449449                if ( ! $hook_name ) {
    450                         if ( isset( $_REQUEST['post_type'] ) && post_type_exists( $_REQUEST['post_type'] ) )
    451                                 $post_type = $_REQUEST['post_type'];
    452                         if ( isset( $_REQUEST['taxonomy'] ) && taxonomy_exists( $_REQUEST['taxonomy'] ) )
    453                                 $taxonomy = $_REQUEST['taxonomy'];
     450                        if ( isset( $_REQUEST['post_type'] ) )
     451                                $post_type = post_type_exists( $_REQUEST['post_type'] ) ? $_REQUEST['post_type'] : false;
     452                        if ( isset( $_REQUEST['taxonomy'] ) )
     453                                $taxonomy = taxonomy_exists( $_REQUEST['taxonomy'] ) ? $_REQUEST['taxonomy'] : false;
    454454
    455455                        switch ( $base ) {
    456456                                case 'post' :
     
    468468                                        }
    469469                                        break;
    470470                                case 'edit-tags' :
    471                                         if ( ! $post_type && is_object_in_taxonomy( 'post', $taxonomy ? $taxonomy : 'post_tag' ) )
     471                                        if ( null === $post_type && is_object_in_taxonomy( 'post', $taxonomy ? $taxonomy : 'post_tag' ) )
    472472                                                $post_type = 'post';
    473473                                        break;
    474474                        }
     
    476476
    477477                switch ( $base ) {
    478478                        case 'post' :
    479                                 if ( ! $post_type )
     479                                if ( null === $post_type )
    480480                                        $post_type = 'post';
    481481                                $id = $post_type;
    482482                                break;
    483483                        case 'edit' :
    484                                 if ( ! $post_type )
     484                                if ( null === $post_type )
    485485                                        $post_type = 'post';
    486486                                $id .= '-' . $post_type;
    487487                                break;
    488488                        case 'edit-tags' :
    489                                 if ( ! $taxonomy )
     489                                if ( null === $taxonomy )
    490490                                        $taxonomy = 'post_tag';
    491491                                $id = 'edit-' . $taxonomy;
    492492                                break;
     
    511511
    512512                $screen->base       = $base;
    513513                $screen->action     = $action;
    514                 $screen->post_type  = $post_type;
    515                 $screen->taxonomy   = $taxonomy;
     514                $screen->post_type  = (string) $post_type;
     515                $screen->taxonomy   = (string) $taxonomy;
    516516                $screen->is_user    = $is_user;
    517517                $screen->is_network = $is_network;
    518518