WordPress.org

Make WordPress Core

Ticket #8657: 8657.diff

File 8657.diff, 934 bytes (added by DD32, 5 years ago)
  • wp-includes/post.php

     
    331331function get_post_status($ID = '') { 
    332332        $post = get_post($ID); 
    333333 
     334        $status = false; 
     335 
    334336        if ( is_object($post) ) { 
    335337                if ( ('attachment' == $post->post_type) && $post->post_parent && ($post->ID != $post->post_parent) ) 
    336                         return get_post_status($post->post_parent); 
     338                        $status = get_post_status($post->post_parent); 
    337339                else 
    338                         return $post->post_status; 
     340                        $status = $post->post_status; 
    339341        } 
    340342 
    341         return false; 
     343        return apply_filters('post_status-' . get_post_type($post), $status, $post); 
    342344} 
    343345 
    344346/** 
     
    398400 
    399401        if ( false === $post ) 
    400402                $post = $posts[0]; 
    401         elseif ( (int) $post ) 
     403        elseif ( is_integer($post) && $post > 0 ) 
    402404                $post = get_post($post, OBJECT); 
    403405 
    404406        if ( is_object($post) )