Changeset 42343 for trunk/src/wp-includes/rest-api.php
- Timestamp:
- 11/30/2017 11:09:33 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/rest-api.php
r42250 r42343 37 37 _doing_it_wrong( 'register_rest_route', __( 'Routes must be namespaced with plugin or theme name and version.' ), '4.4.0' ); 38 38 return false; 39 } else 39 } elseif ( empty( $route ) ) { 40 40 _doing_it_wrong( 'register_rest_route', __( 'Route must be specified.' ), '4.4.0' ); 41 41 return false; … … 55 55 56 56 $defaults = array( 57 'methods' 58 'callback' 59 'args' 57 'methods' => 'GET', 58 'callback' => null, 59 'args' => array(), 60 60 ); 61 61 foreach ( $args as $key => &$arg_group ) { … … 65 65 } 66 66 67 $arg_group = array_merge( $defaults, $arg_group );67 $arg_group = array_merge( $defaults, $arg_group ); 68 68 $arg_group['args'] = array_merge( $common_args, $arg_group['args'] ); 69 69 } … … 142 142 global $wp_rewrite; 143 143 144 add_rewrite_rule( '^' . rest_get_url_prefix() . '/?$', 'index.php?rest_route=/','top' );145 add_rewrite_rule( '^' . rest_get_url_prefix() . '/(.*)?', 'index.php?rest_route=/$matches[1]','top' );146 add_rewrite_rule( '^' . $wp_rewrite->index . '/' . rest_get_url_prefix() . '/?$', 'index.php?rest_route=/','top' );147 add_rewrite_rule( '^' . $wp_rewrite->index . '/' . rest_get_url_prefix() . '/(.*)?', 'index.php?rest_route=/$matches[1]','top' );144 add_rewrite_rule( '^' . rest_get_url_prefix() . '/?$', 'index.php?rest_route=/', 'top' ); 145 add_rewrite_rule( '^' . rest_get_url_prefix() . '/(.*)?', 'index.php?rest_route=/$matches[1]', 'top' ); 146 add_rewrite_rule( '^' . $wp_rewrite->index . '/' . rest_get_url_prefix() . '/?$', 'index.php?rest_route=/', 'top' ); 147 add_rewrite_rule( '^' . $wp_rewrite->index . '/' . rest_get_url_prefix() . '/(.*)?', 'index.php?rest_route=/$matches[1]', 'top' ); 148 148 } 149 149 … … 418 418 */ 419 419 $wp_rest_server_class = apply_filters( 'wp_rest_server_class', 'WP_REST_Server' ); 420 $wp_rest_server = new $wp_rest_server_class;420 $wp_rest_server = new $wp_rest_server_class; 421 421 422 422 /** … … 570 570 571 571 $response = new WP_REST_Response(); 572 $data = array();572 $data = array(); 573 573 574 574 foreach ( $handler->get_routes() as $route => $endpoints ) { … … 652 652 $data = $response->get_data(); 653 653 654 $fields = is_array( $request['_fields'] 654 $fields = is_array( $request['_fields'] ) ? $request['_fields'] : preg_split( '/[\s,]+/', $request['_fields'] ); 655 655 656 656 if ( 0 === count( $fields ) ) { … … 868 868 if ( ! $is_utc && ! $has_timezone ) { 869 869 $local = date( 'Y-m-d H:i:s', $date ); 870 $utc = get_gmt_from_date( $local );870 $utc = get_gmt_from_date( $local ); 871 871 } else { 872 $utc = date( 'Y-m-d H:i:s', $date );872 $utc = date( 'Y-m-d H:i:s', $date ); 873 873 $local = get_date_from_gmt( $utc ); 874 874 } … … 983 983 function rest_sanitize_boolean( $value ) { 984 984 // String values are translated to `true`; make sure 'false' is false. 985 if ( is_string( $value ) 985 if ( is_string( $value ) ) { 986 986 $value = strtolower( $value ); 987 987 if ( in_array( $value, array( 'false', '0' ), true ) ) { … … 1147 1147 if ( isset( $args['format'] ) ) { 1148 1148 switch ( $args['format'] ) { 1149 case 'date-time' 1149 case 'date-time': 1150 1150 if ( ! rest_parse_date( $value ) ) { 1151 1151 return new WP_Error( 'rest_invalid_date', __( 'Invalid date.' ) ); … … 1153 1153 break; 1154 1154 1155 case 'email' 1155 case 'email': 1156 1156 if ( ! is_email( $value ) ) { 1157 1157 return new WP_Error( 'rest_invalid_email', __( 'Invalid email address.' ) ); 1158 1158 } 1159 1159 break; 1160 case 'ip' 1160 case 'ip': 1161 1161 if ( ! rest_is_ip_address( $value ) ) { 1162 1162 /* translators: %s: IP address */ … … 1271 1271 if ( isset( $args['format'] ) ) { 1272 1272 switch ( $args['format'] ) { 1273 case 'date-time' 1273 case 'date-time': 1274 1274 return sanitize_text_field( $value ); 1275 1275 1276 case 'email' 1276 case 'email': 1277 1277 /* 1278 1278 * sanitize_email() validates, which would be unexpected. … … 1280 1280 return sanitize_text_field( $value ); 1281 1281 1282 case 'uri' 1282 case 'uri': 1283 1283 return esc_url_raw( $value ); 1284 1284 1285 case 'ip' 1285 case 'ip': 1286 1286 return sanitize_text_field( $value ); 1287 1287 }
Note: See TracChangeset
for help on using the changeset viewer.