Make WordPress Core

Ticket #38617: 38617.diff

File 38617.diff, 18.3 KB (added by joehoyle, 8 years ago)
  • src/wp-includes/rest-api/endpoints/class-wp-rest-attachments-controller.php

     
    594594                        'description'       => __( 'Limit result set to attachments of a particular media type.' ),
    595595                        'type'              => 'string',
    596596                        'enum'              => array_keys( $media_types ),
    597                         'validate_callback' => 'rest_validate_request_arg',
    598597                );
    599598
    600599                $params['mime_type'] = array(
  • src/wp-includes/rest-api/endpoints/class-wp-rest-comments-controller.php

     
    11021102                                        'type'         => 'string',
    11031103                                        'format'       => 'ipv4',
    11041104                                        'context'      => array( 'edit' ),
    1105                                         'arg_options'  => array(
    1106                                                 'default'           => '127.0.0.1',
    1107                                         ),
     1105                                        'default'      => '127.0.0.1',
    11081106                                ),
    11091107                                'author_name'     => array(
    11101108                                        'description'  => __( 'Display name for the object author.' ),
     
    11761174                                        'description'  => __( 'The id for the parent of the object.' ),
    11771175                                        'type'         => 'integer',
    11781176                                        'context'      => array( 'view', 'edit', 'embed' ),
    1179                                         'arg_options'  => array(
    1180                                                 'default'           => 0,
    1181                                         ),
     1177                                        'default'      => 0,
    11821178                                ),
    11831179                                'post'             => array(
    11841180                                        'description'  => __( 'The id of the associated post object.' ),
    11851181                                        'type'         => 'integer',
    11861182                                        'context'      => array( 'view', 'edit' ),
    1187                                         'arg_options'  => array(
    1188                                                 'default'           => 0,
    1189                                         ),
     1183                                        'default'      => 0,
    11901184                                ),
    11911185                                'status'           => array(
    11921186                                        'description'  => __( 'State of the object.' ),
     
    12521246                        'description'       => __( 'Limit response to resources published after a given ISO8601 compliant date.' ),
    12531247                        'type'              => 'string',
    12541248                        'format'            => 'date-time',
    1255                         'validate_callback' => 'rest_validate_request_arg',
    12561249                );
    12571250
    12581251                $query_params['author'] = array(
    12591252                        'description'       => __( 'Limit result set to comments assigned to specific user ids. Requires authorization.' ),
    1260                         'sanitize_callback' => 'wp_parse_id_list',
    12611253                        'type'              => 'array',
     1254                        'items'             => array(
     1255                                'type'          => 'integer',
     1256                        ),
    12621257                );
    12631258
    12641259                $query_params['author_exclude'] = array(
    12651260                        'description'       => __( 'Ensure result set excludes comments assigned to specific user ids. Requires authorization.' ),
    1266                         'sanitize_callback' => 'wp_parse_id_list',
    12671261                        'type'              => 'array',
     1262                        'items'             => array(
     1263                                'type'          => 'integer',
     1264                        ),
    12681265                );
    12691266
    12701267                $query_params['author_email'] = array(
    12711268                        'default'           => null,
    12721269                        'description'       => __( 'Limit result set to that from a specific author email. Requires authorization.' ),
    12731270                        'format'            => 'email',
    1274                         'sanitize_callback' => 'sanitize_email',
    12751271                        'type'              => 'string',
    12761272                );
    12771273
     
    12791275                        'description'       => __( 'Limit response to resources published before a given ISO8601 compliant date.' ),
    12801276                        'type'              => 'string',
    12811277                        'format'            => 'date-time',
    1282                         'validate_callback' => 'rest_validate_request_arg',
    12831278                );
    12841279
    12851280                $query_params['exclude'] = array(
    12861281                        'description'        => __( 'Ensure result set excludes specific ids.' ),
    12871282                        'type'               => 'array',
     1283                        'items'             => array(
     1284                                'type'          => 'integer',
     1285                        ),
    12881286                        'default'            => array(),
    1289                         'sanitize_callback'  => 'wp_parse_id_list',
    12901287                );
    12911288
    12921289                $query_params['include'] = array(
    12931290                        'description'        => __( 'Limit result set to specific ids.' ),
    12941291                        'type'               => 'array',
     1292                        'items'             => array(
     1293                                'type'          => 'integer',
     1294                        ),
    12951295                        'default'            => array(),
    1296                         'sanitize_callback'  => 'wp_parse_id_list',
    12971296                );
    12981297
    12991298                $query_params['karma'] = array(
    13001299                        'default'           => null,
    13011300                        'description'       => __( 'Limit result set to that of a particular comment karma. Requires authorization.' ),
    1302                         'sanitize_callback' => 'absint',
    13031301                        'type'              => 'integer',
    1304                         'validate_callback'  => 'rest_validate_request_arg',
    13051302                );
    13061303
    13071304                $query_params['offset'] = array(
    13081305                        'description'        => __( 'Offset the result set by a specific number of comments.' ),
    13091306                        'type'               => 'integer',
    1310                         'sanitize_callback'  => 'absint',
    1311                         'validate_callback'  => 'rest_validate_request_arg',
    13121307                );
    13131308
    13141309                $query_params['order']      = array(
    13151310                        'description'           => __( 'Order sort attribute ascending or descending.' ),
    13161311                        'type'                  => 'string',
    1317                         'sanitize_callback'     => 'sanitize_key',
    1318                         'validate_callback'     => 'rest_validate_request_arg',
    13191312                        'default'               => 'desc',
    13201313                        'enum'                  => array(
    13211314                                'asc',
     
    13261319                $query_params['orderby']    = array(
    13271320                        'description'           => __( 'Sort collection by object attribute.' ),
    13281321                        'type'                  => 'string',
    1329                         'sanitize_callback'     => 'sanitize_key',
    1330                         'validate_callback'     => 'rest_validate_request_arg',
    13311322                        'default'               => 'date_gmt',
    13321323                        'enum'                  => array(
    13331324                                'date',
     
    13431334                $query_params['parent'] = array(
    13441335                        'default'           => array(),
    13451336                        'description'       => __( 'Limit result set to resources of specific parent ids.' ),
    1346                         'sanitize_callback' => 'wp_parse_id_list',
    13471337                        'type'              => 'array',
     1338                        'items'             => array(
     1339                                'type'          => 'integer',
     1340                        ),
    13481341                );
    13491342
    13501343                $query_params['parent_exclude'] = array(
    13511344                        'default'           => array(),
    13521345                        'description'       => __( 'Ensure result set excludes specific parent ids.' ),
    1353                         'sanitize_callback' => 'wp_parse_id_list',
    13541346                        'type'              => 'array',
     1347                        'items'             => array(
     1348                                'type'          => 'integer',
     1349                        ),
    13551350                );
    13561351
    13571352                $query_params['post']   = array(
    13581353                        'default'           => array(),
    13591354                        'description'       => __( 'Limit result set to resources assigned to specific post ids.' ),
    13601355                        'type'              => 'array',
    1361                         'sanitize_callback' => 'wp_parse_id_list',
     1356                        'items'             => array(
     1357                                'type'          => 'integer',
     1358                        ),
    13621359                );
    13631360
    13641361                $query_params['status'] = array(
  • src/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php

     
    19741974                                'items'       => array(
    19751975                                        'type'    => 'integer',
    19761976                                ),
    1977                                 'arg_options' => array(
    1978                                         'sanitize_callback' => 'wp_parse_id_list',
    1979                                 ),
    19801977                                'context'     => array( 'view', 'edit' ),
    19811978                        );
    19821979                        $schema['properties'][ $base . '_exclude' ] = array(
     
    19851982                                'items'       => array(
    19861983                                        'type'    => 'integer',
    19871984                                ),
    1988                                 'arg_options' => array(
    1989                                         'sanitize_callback' => 'wp_parse_id_list',
    1990                                 ),
    19911985                                'context'     => array( 'view', 'edit' ),
    19921986                        );
    19931987                }
     
    20122006                        'description'        => __( 'Limit response to resources published after a given ISO8601 compliant date.' ),
    20132007                        'type'               => 'string',
    20142008                        'format'             => 'date-time',
    2015                         'validate_callback'  => 'rest_validate_request_arg',
    20162009                );
    20172010
    20182011                if ( post_type_supports( $this->post_type, 'author' ) ) {
    20192012                        $params['author'] = array(
    20202013                                'description'         => __( 'Limit result set to posts assigned to specific authors.' ),
    20212014                                'type'                => 'array',
     2015                                'items'               => array(
     2016                                        'type'            => 'integer',
     2017                                ),
    20222018                                'default'             => array(),
    2023                                 'sanitize_callback'   => 'wp_parse_id_list',
    20242019                        );
    20252020                        $params['author_exclude'] = array(
    20262021                                'description'         => __( 'Ensure result set excludes posts assigned to specific authors.' ),
    20272022                                'type'                => 'array',
     2023                                'items'               => array(
     2024                                        'type'            => 'integer',
     2025                                ),
    20282026                                'default'             => array(),
    2029                                 'sanitize_callback'   => 'wp_parse_id_list',
    20302027                        );
    20312028                }
    20322029
     
    20342031                        'description'        => __( 'Limit response to resources published before a given ISO8601 compliant date.' ),
    20352032                        'type'               => 'string',
    20362033                        'format'             => 'date-time',
    2037                         'validate_callback'  => 'rest_validate_request_arg',
    20382034                );
    20392035
    20402036                $params['exclude'] = array(
    20412037                        'description'        => __( 'Ensure result set excludes specific ids.' ),
    20422038                        'type'               => 'array',
     2039                        'items'              => array(
     2040                                'type'           => 'integer',
     2041                        ),
    20432042                        'default'            => array(),
    2044                         'sanitize_callback'  => 'wp_parse_id_list',
    20452043                );
    20462044
    20472045                $params['include'] = array(
    20482046                        'description'        => __( 'Limit result set to specific ids.' ),
    20492047                        'type'               => 'array',
     2048                        'items'              => array(
     2049                                'type'           => 'integer',
     2050                        ),
    20502051                        'default'            => array(),
    2051                         'sanitize_callback'  => 'wp_parse_id_list',
    20522052                );
    20532053
    20542054                if ( 'page' === $this->post_type || post_type_supports( $this->post_type, 'page-attributes' ) ) {
    20552055                        $params['menu_order'] = array(
    20562056                                'description'        => __( 'Limit result set to resources with a specific menu_order value.' ),
    20572057                                'type'               => 'integer',
    2058                                 'sanitize_callback'  => 'absint',
    2059                                 'validate_callback'  => 'rest_validate_request_arg',
    20602058                        );
    20612059                }
    20622060
    20632061                $params['offset'] = array(
    20642062                        'description'        => __( 'Offset the result set by a specific number of items.' ),
    20652063                        'type'               => 'integer',
    2066                         'sanitize_callback'  => 'absint',
    2067                         'validate_callback'  => 'rest_validate_request_arg',
    20682064                );
    20692065
    20702066                $params['order'] = array(
     
    20722068                        'type'               => 'string',
    20732069                        'default'            => 'desc',
    20742070                        'enum'               => array( 'asc', 'desc' ),
    2075                         'validate_callback'  => 'rest_validate_request_arg',
    20762071                );
    20772072
    20782073                $params['orderby'] = array(
     
    20872082                                'title',
    20882083                                'slug',
    20892084                        ),
    2090                         'validate_callback'  => 'rest_validate_request_arg',
    20912085                );
    20922086
    20932087                if ( 'page' === $this->post_type || post_type_supports( $this->post_type, 'page-attributes' ) ) {
     
    21002094                        $params['parent'] = array(
    21012095                                'description'       => __( 'Limit result set to those of particular parent ids.' ),
    21022096                                'type'              => 'array',
    2103                                 'sanitize_callback' => 'wp_parse_id_list',
     2097                                'items'             => array(
     2098                                        'type'          => 'integer',
     2099                                ),
    21042100                                'default'           => array(),
    21052101                        );
    21062102                        $params['parent_exclude'] = array(
    21072103                                'description'       => __( 'Limit result set to all items except those of a particular parent id.' ),
    21082104                                'type'              => 'array',
    2109                                 'sanitize_callback' => 'wp_parse_id_list',
     2105                                'items'             => array(
     2106                                        'type'          => 'integer',
     2107                                ),
    21102108                                'default'           => array(),
    21112109                        );
    21122110                }
     
    21142112                $params['slug'] = array(
    21152113                        'description'       => __( 'Limit result set to posts with a specific slug.' ),
    21162114                        'type'              => 'string',
    2117                         'validate_callback' => 'rest_validate_request_arg',
    21182115                );
    21192116
    21202117                $params['status'] = array(
     
    21342131                        $params[ $base ] = array(
    21352132                                'description'       => sprintf( __( 'Limit result set to all items that have the specified term assigned in the %s taxonomy.' ), $base ),
    21362133                                'type'              => 'array',
    2137                                 'sanitize_callback' => 'wp_parse_id_list',
     2134                                'items'             => array(
     2135                                        'type'          => 'integer',
     2136                                ),
    21382137                                'default'           => array(),
    21392138                        );
    21402139                }
     
    21432142                        $params['sticky'] = array(
    21442143                                'description'       => __( 'Limit result set to items that are sticky.' ),
    21452144                                'type'              => 'boolean',
    2146                                 'sanitize_callback' => 'rest_parse_request_arg',
    21472145                        );
    21482146                }
    21492147
  • src/wp-includes/rest-api/endpoints/class-wp-rest-taxonomies-controller.php

     
    301301                $new_params['type'] = array(
    302302                        'description'  => __( 'Limit results to resources associated with a specific post type.' ),
    303303                        'type'         => 'string',
    304                         'validate_callback' => 'rest_validate_request_arg',
    305304                );
    306305                return $new_params;
    307306        }
  • src/wp-includes/rest-api/endpoints/class-wp-rest-terms-controller.php

     
    887887                $query_params['exclude'] = array(
    888888                        'description'       => __( 'Ensure result set excludes specific ids.' ),
    889889                        'type'              => 'array',
     890                        'items'             => array(
     891                                'type'          => 'integer',
     892                        ),
    890893                        'default'           => array(),
    891                         'sanitize_callback' => 'wp_parse_id_list',
    892894                );
    893895
    894896                $query_params['include'] = array(
    895897                        'description'       => __( 'Limit result set to specific ids.' ),
    896898                        'type'              => 'array',
     899                        'items'             => array(
     900                                'type'          => 'integer',
     901                        ),
    897902                        'default'           => array(),
    898                         'sanitize_callback' => 'wp_parse_id_list',
    899903                );
    900904
    901905                if ( ! $taxonomy->hierarchical ) {
    902906                        $query_params['offset'] = array(
    903907                                'description'       => __( 'Offset the result set by a specific number of items.' ),
    904908                                'type'              => 'integer',
    905                                 'sanitize_callback' => 'absint',
    906                                 'validate_callback' => 'rest_validate_request_arg',
    907909                        );
    908910                }
    909911
    910912                $query_params['order'] = array(
    911913                        'description'       => __( 'Order sort attribute ascending or descending.' ),
    912914                        'type'              => 'string',
    913                         'sanitize_callback' => 'sanitize_key',
    914915                        'default'           => 'asc',
    915916                        'enum'              => array(
    916917                                'asc',
    917918                                'desc',
    918919                        ),
    919                         'validate_callback' => 'rest_validate_request_arg',
    920920                );
    921921
    922922                $query_params['orderby'] = array(
    923923                        'description'       => __( 'Sort collection by resource attribute.' ),
    924924                        'type'              => 'string',
    925                         'sanitize_callback' => 'sanitize_key',
    926925                        'default'           => 'name',
    927926                        'enum'              => array(
    928927                                'id',
     
    933932                                'description',
    934933                                'count',
    935934                        ),
    936                         'validate_callback' => 'rest_validate_request_arg',
    937935                );
    938936
    939937                $query_params['hide_empty'] = array(
    940938                        'description'       => __( 'Whether to hide resources not assigned to any posts.' ),
    941939                        'type'              => 'boolean',
    942940                        'default'           => false,
    943                         'sanitize_callback' => 'rest_sanitize_request_arg',
    944                         'validate_callback' => 'rest_validate_request_arg',
    945941                );
    946942
    947943                if ( $taxonomy->hierarchical ) {
    948944                        $query_params['parent'] = array(
    949945                                'description'       => __( 'Limit result set to resources assigned to a specific parent.' ),
    950946                                'type'              => 'integer',
    951                                 'sanitize_callback' => 'absint',
    952                                 'validate_callback' => 'rest_validate_request_arg',
    953947                        );
    954948                }
    955949
     
    957951                        'description'       => __( 'Limit result set to resources assigned to a specific post.' ),
    958952                        'type'              => 'integer',
    959953                        'default'           => null,
    960                         'validate_callback' => 'rest_validate_request_arg',
    961954                );
    962955
    963956                $query_params['slug'] = array(
    964957                        'description'       => __( 'Limit result set to resources with a specific slug.' ),
    965958                        'type'              => 'string',
    966                         'validate_callback' => 'rest_validate_request_arg',
    967959                );
    968960
    969961                return $query_params;
  • src/wp-includes/rest-api/endpoints/class-wp-rest-users-controller.php

     
    10221022                                                'type'    => 'string',
    10231023                                        ),
    10241024                                        'context'     => array( 'edit' ),
    1025                                         'arg_options' => array(
    1026                                                 'sanitize_callback' => 'wp_parse_slug_list',
    1027                                         ),
    10281025                                ),
    10291026                                'password'        => array(
    10301027                                        'description' => __( 'Password for the resource (never included).' ),
     
    10911088                $query_params['exclude'] = array(
    10921089                        'description'        => __( 'Ensure result set excludes specific ids.' ),
    10931090                        'type'               => 'array',
     1091                        'items'              => array(
     1092                                'type'           => 'integer',
     1093                        ),
    10941094                        'default'            => array(),
    1095                         'sanitize_callback'  => 'wp_parse_id_list',
    10961095                );
    10971096
    10981097                $query_params['include'] = array(
    10991098                        'description'        => __( 'Limit result set to specific ids.' ),
    11001099                        'type'               => 'array',
     1100                        'items'              => array(
     1101                                'type'           => 'integer',
     1102                        ),
    11011103                        'default'            => array(),
    1102                         'sanitize_callback'  => 'wp_parse_id_list',
    11031104                );
    11041105
    11051106                $query_params['offset'] = array(
    11061107                        'description'        => __( 'Offset the result set by a specific number of items.' ),
    11071108                        'type'               => 'integer',
    1108                         'sanitize_callback'  => 'absint',
    1109                         'validate_callback'  => 'rest_validate_request_arg',
    11101109                );
    11111110
    11121111                $query_params['order'] = array(
    11131112                        'default'            => 'asc',
    11141113                        'description'        => __( 'Order sort attribute ascending or descending.' ),
    11151114                        'enum'               => array( 'asc', 'desc' ),
    1116                         'sanitize_callback'  => 'sanitize_key',
    11171115                        'type'               => 'string',
    1118                         'validate_callback'  => 'rest_validate_request_arg',
    11191116                );
    11201117
    11211118                $query_params['orderby'] = array(
     
    11301127                                'email',
    11311128                                'url',
    11321129                        ),
    1133                         'sanitize_callback'  => 'sanitize_key',
    11341130                        'type'               => 'string',
    1135                         'validate_callback'  => 'rest_validate_request_arg',
    11361131                );
    11371132
    11381133                $query_params['slug']    = array(
    11391134                        'description'        => __( 'Limit result set to resources with a specific slug.' ),
    11401135                        'type'               => 'string',
    1141                         'validate_callback'  => 'rest_validate_request_arg',
    11421136                );
    11431137
    11441138                $query_params['roles']   = array(
    11451139                        'description'        => __( 'Limit result set to resources matching at least one specific role provided. Accepts csv list or single role.' ),
    11461140                        'type'               => 'array',
    1147                         'sanitize_callback'  => 'wp_parse_slug_list',
     1141                        'items'              => array(
     1142                                'type'           => 'string',
     1143                        ),
    11481144                );
    11491145
    11501146                return $query_params;