WordPress.org

Make WordPress Core

Ticket #11694: 11694.diff

File 11694.diff, 803 bytes (added by dd32, 8 years ago)
  • wp-includes/classes.php

     
    484484                        $wp_query->set_404();
    485485                        status_header( 404 );
    486486                        nocache_headers();
     487                } elseif ( is_singular() && get_query_var('page') > 1 ) {
     488                        $pages = substr_count( $wp_query->posts[0]->post_content, '<!--nextpage-->' ) + 1;
     489                        if ( get_query_var('page') > $pages ) {
     490                                $wp_query->set_404();
     491                                status_header( 404 );
     492                                nocache_headers();
     493                                // Disable Canonical redirects, as it'll guess the permalink for 404's.
     494                                remove_action('template_redirect', 'redirect_canonical');
     495                        } else {
     496                                status_header( 200 );
     497                        }
    487498                } elseif ( !is_404() ) {
    488499                        status_header( 200 );
    489500                }