Changeset 39352
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php
r39349 r39352 974 974 975 975 // Post password. 976 if ( ! empty( $schema['properties']['password'] ) && isset( $request['password'] ) && '' !== $request['password']) {976 if ( ! empty( $schema['properties']['password'] ) && isset( $request['password'] ) ) { 977 977 $prepared_post->post_password = $request['password']; 978 978 979 if ( ! empty( $schema['properties']['sticky'] ) && ! empty( $request['sticky'] ) ) { 980 return new WP_Error( 'rest_invalid_field', __( 'A post can not be sticky and have a password.' ), array( 'status' => 400 ) ); 981 } 982 983 if ( ! empty( $prepared_post->ID ) && is_sticky( $prepared_post->ID ) ) { 984 return new WP_Error( 'rest_invalid_field', __( 'A sticky post can not be password protected.' ), array( 'status' => 400 ) ); 979 if ( '' !== $request['password'] ) { 980 if ( ! empty( $schema['properties']['sticky'] ) && ! empty( $request['sticky'] ) ) { 981 return new WP_Error( 'rest_invalid_field', __( 'A post can not be sticky and have a password.' ), array( 'status' => 400 ) ); 982 } 983 984 if ( ! empty( $prepared_post->ID ) && is_sticky( $prepared_post->ID ) ) { 985 return new WP_Error( 'rest_invalid_field', __( 'A sticky post can not be password protected.' ), array( 'status' => 400 ) ); 986 } 985 987 } 986 988 } -
trunk/tests/phpunit/tests/rest-api/rest-posts-controller.php
r39343 r39352 1948 1948 $new_data = $response->get_data(); 1949 1949 $this->assertEquals( '', $new_data['content']['raw'] ); 1950 } 1951 1952 public function test_update_post_with_empty_password() { 1953 wp_set_current_user( self::$editor_id ); 1954 wp_update_post( array( 1955 'ID' => self::$post_id, 1956 'post_password' => 'foo', 1957 ) ); 1958 1959 $request = new WP_REST_Request( 'PUT', sprintf( '/wp/v2/posts/%d', self::$post_id ) ); 1960 $params = $this->set_post_data( array( 1961 'password' => '', 1962 ) ); 1963 $request->set_body_params( $params ); 1964 $response = $this->server->dispatch( $request ); 1965 $data = $response->get_data(); 1966 $this->assertEquals( '', $data['password'] ); 1950 1967 } 1951 1968
Note: See TracChangeset
for help on using the changeset viewer.