WordPress.org

Make WordPress Core

Ticket #7927: 7927.patch

File 7927.patch, 1.9 KB (added by Viper007Bond, 7 years ago)
  • wp-includes/comment-template.php

     
    762762                $comments_by_type = &$wp_query->comments_by_type; 
    763763        } 
    764764 
     765        // Set the default comments page to the last page (this isn't perfect) 
     766        if ( '' == get_query_var('cpage') && get_option('page_comments') ) { 
     767                if ( get_option('thread_comments') ) { 
     768                        $walker = new Walker_Comment; 
     769                        $lastpage = floor( $walker->get_number_of_root_elements( $wp_query->comments ) / get_query_var('comments_per_page') ); 
     770                } else { 
     771                        $lastpage = floor( count( $wp_query->comments ) / get_query_var('comments_per_page') ); 
     772                } 
     773 
     774                set_query_var('cpage', $lastpage); 
     775        } 
     776 
    765777        define('COMMENTS_TEMPLATE', true); 
    766778 
    767779        $include = apply_filters('comments_template', STYLESHEETPATH . $file ); 
  • wp-includes/link-template.php

     
    11741174        } 
    11751175} 
    11761176 
    1177 function get_comments_pagenum_link($pagenum = 1) { 
     1177function get_comments_pagenum_link( $pagenum = 1, $max_page = 0 ) { 
    11781178        global $wp_rewrite; 
    11791179 
    11801180        $pagenum = (int) $pagenum; 
     
    11901190 
    11911191        $base = trailingslashit( get_bloginfo( 'home' ) ); 
    11921192 
    1193         if ( $pagenum > 1 ) { 
     1193        if ( $pagenum != $max_page ) { 
    11941194                $result = add_query_arg( 'cpage', $pagenum, $base . $request ); 
    11951195        } else { 
    11961196                $result = $base . $request; 
     
    12251225        if ( empty($label) ) 
    12261226                $label = __('» Newer Comments'); 
    12271227 
    1228         echo '<a href="' . clean_url(get_comments_pagenum_link($nextpage)); 
     1228        echo '<a href="' . clean_url( get_comments_pagenum_link( $nextpage, $max_page ) ); 
    12291229        $attr = apply_filters( 'next_comments_link_attributes', '' ); 
    12301230        echo "\" $attr>". preg_replace('/&([^#])(?![a-z]{1,8};)/', '&#038;$1', $label) .'</a>'; 
    12311231}