WordPress.org

Make WordPress Core

Ticket #7942: 7942.2.diff

File 7942.2.diff, 3.0 KB (added by Viper007Bond, 10 years ago)

Bug fix of DD32's patch for when newest page is showed by default

  • wp-includes/canonical.php

     
    149149                        if ( is_feed() ) {
    150150                                $paged_redirect['path'] = user_trailingslashit( trailingslashit( $paged_redirect['path'] ) . 'feed/' . ( ( 'rss2' ==  get_query_var('feed') || 'feed' == get_query_var('feed') ) ? '' : get_query_var('feed') ), 'feed' );
    151151                        }
    152                         if ( get_query_var('cpage') > 1 ) {
     152                        if ( ( 'newest' == get_option('default_comments_page') && get_query_var('cpage') > 0 ) || ( 'newest' != get_option('default_comments_page') && get_query_var('cpage') > 1 ) ) {
    153153                                $paged_redirect['path'] = user_trailingslashit( trailingslashit( $paged_redirect['path'] ) . 'comment-page-' . get_query_var('cpage'), 'commentpaged' );
    154154                        }
    155155                        $redirect_url = $paged_redirect['scheme'] . '://' . $paged_redirect['host'] . $paged_redirect['path'];
  • wp-includes/link-template.php

     
    11481148
    11491149        $request = preg_replace('|^'. $home_root . '|', '', $request);
    11501150        $request = preg_replace('|^/+|', '', $request);
     1151        $request = preg_replace('|comment-page-[0-9]+/?$|', '', $request);
    11511152
    11521153        $base = trailingslashit( get_bloginfo( 'home' ) );
    11531154
    11541155        $result = $base . $request;
    11551156       
    11561157        if ( 'newest' == get_option('default_comments_page') ) {
    1157                 if ( $pagenum != $max_page )
     1158                if ( $pagenum != $max_page ) {
     1159                        if ( $wp_rewrite->using_permalinks() )
     1160                                $result = user_trailingslashit( trailingslashit($base . $request) . 'comment-page-' . $pagenum, 'commentpaged');
     1161                        else
     1162                                $result = add_query_arg( 'cpage', $pagenum, $base . $request );
     1163                }
     1164        } elseif ( $pagenum > 1 ) {
     1165                if ( $wp_rewrite->using_permalinks() )
     1166                        $result = user_trailingslashit( trailingslashit($base . $request) . 'comment-page-' . $pagenum, 'commentpaged');
     1167                else
    11581168                        $result = add_query_arg( 'cpage', $pagenum, $base . $request );
    1159         } elseif ( $pagenum > 1 )
    1160                 $result = add_query_arg( 'cpage', $pagenum, $base . $request );
     1169        }
    11611170
    11621171        $result .= '#comments';
    11631172
     
    11811190                return;
    11821191
    11831192        $page = get_query_var('cpage');
    1184        
     1193
    11851194        if ( !$page )
    11861195                $page = 1;
    11871196
     
    12091218 * @param string $label Optional. Label for comments link text.
    12101219 */
    12111220function previous_comments_link($label='') {
    1212         global $wp_query;
    12131221
    12141222        if ( !is_singular() )
    12151223                return;
     
    12221230        if ( $page <= 1 )
    12231231                return;
    12241232
    1225         $nextpage = intval($page) - 1;
     1233        $prevpage = intval($page) - 1;
    12261234
    12271235        if ( empty($label) )
    12281236                $label = __('&laquo; Older Comments');
    12291237
    1230         echo '<a href="' . clean_url(get_comments_pagenum_link($nextpage));
     1238        echo '<a href="' . clean_url(get_comments_pagenum_link($prevpage));
    12311239        $attr = apply_filters( 'previous_comments_link_attributes', '' );
    12321240        echo "\" $attr>". preg_replace('/&([^#])(?![a-z]{1,8};)/', '&#038;$1', $label) .'</a>';
    12331241}