Make WordPress Core


Ignore:
Timestamp:
09/01/2007 03:41:50 AM (18 years ago)
Author:
markjaquith
Message:

Preserve query string arrays in add_query_arg(). fixes #4878 for trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/functions.php

    r5929 r5999  
    645645    }
    646646
    647     foreach($qs as $k => $v) {
    648         if ( $v !== FALSE ) {
    649             if ( $ret != '' )
    650                 $ret .= '&';
    651             if ( empty($v) && !preg_match('|[?&]' . preg_quote($k, '|') . '=|', $query) )
    652                 $ret .= $k;
    653             else
    654                 $ret .= "$k=$v";
    655         }
    656     }
     647    foreach ( $qs as $k => $v ) {
     648        if ( $v === false )
     649            unset($qs[$k]);
     650    }
     651
     652    if ( ini_get('arg_separator.output') === '&')
     653        $ret = http_build_query($qs, '', '&');
     654    else
     655        $ret = _http_build_query($qs, NULL, '&');
    657656    $ret = trim($ret, '?');
     657    $ret = preg_replace('#=(&|$)#', '$1', $ret);
    658658    $ret = $protocol . $base . $ret . $frag;
    659659    $ret = rtrim($ret, '?');
Note: See TracChangeset for help on using the changeset viewer.