WordPress.org

Make WordPress Core


Ignore:
Timestamp:
07/04/2006 08:01:31 PM (16 years ago)
Author:
ryan
Message:

Don't allow negative values when paging. fixes #2893

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.0/wp-includes/classes.php

    r3914 r3958  
    306306            $q['page'] = trim($q['page'], '/');
    307307            $q['page'] = (int) $q['page'];
     308            $q['page'] = abs($q['page']);
    308309        }
    309310   
     
    618619        // Paging
    619620        if (empty($q['nopaging']) && ! $this->is_single && ! $this->is_page) {
    620             $page = $q['paged'];
     621            $page = abs(intval($q['paged']));
    621622            if (empty($page)) {
    622623                $page = 1;
     
    624625
    625626            if (($q['what_to_show'] == 'posts')) {
    626                 $pgstrt = '';
    627                 $pgstrt = (intval($page) -1) * $q['posts_per_page'] . ', ';
    628                 $limits = 'LIMIT '.$pgstrt.$q['posts_per_page'];
     627                $q['offset'] = abs(intval($q['offset']));
     628                if ( empty($q['offset']) ) {
     629                    $pgstrt = '';
     630                    $pgstrt = (intval($page) -1) * $q['posts_per_page'] . ', ';
     631                    $limits = 'LIMIT '.$pgstrt.$q['posts_per_page'];
     632                } else { // we're ignoring $page and using 'offset'
     633                    $pgstrt = $q['offset'] . ', ';
     634                    $limits = 'LIMIT ' . $pgstrt . $q['posts_per_page'];
     635                }
    629636            } elseif ($q['what_to_show'] == 'days') {
    630637                $startrow = $q['posts_per_page'] * (intval($page)-1);
Note: See TracChangeset for help on using the changeset viewer.