WP_REST_Application_Passwords_Controller::update_item()publicWP 5.6.0

Updates an application password.

Метод класса: WP_REST_Application_Passwords_Controller{}

Хуки из метода

Возвращает

WP_REST_Response|WP_Error. Response object on success, or WP_Error object on failure.

Использование

$WP_REST_Application_Passwords_Controller = new WP_REST_Application_Passwords_Controller();
$WP_REST_Application_Passwords_Controller->update_item( $request );
$request(WP_REST_Request) (обязательный)
Full details about the request.

Список изменений

С версии 5.6.0 Введена.

Код WP_REST_Application_Passwords_Controller::update_item() WP 6.5.2

public function update_item( $request ) {
	$user = $this->get_user( $request );

	if ( is_wp_error( $user ) ) {
		return $user;
	}

	$item = $this->get_application_password( $request );

	if ( is_wp_error( $item ) ) {
		return $item;
	}

	$prepared = $this->prepare_item_for_database( $request );

	if ( is_wp_error( $prepared ) ) {
		return $prepared;
	}

	$saved = WP_Application_Passwords::update_application_password( $user->ID, $item['uuid'], wp_slash( (array) $prepared ) );

	if ( is_wp_error( $saved ) ) {
		return $saved;
	}

	$fields_update = $this->update_additional_fields_for_object( $item, $request );

	if ( is_wp_error( $fields_update ) ) {
		return $fields_update;
	}

	$item = WP_Application_Passwords::get_user_application_password( $user->ID, $item['uuid'] );

	/** This action is documented in wp-includes/rest-api/endpoints/class-wp-rest-application-passwords-controller.php */
	do_action( 'rest_after_insert_application_password', $item, $request, false );

	$request->set_param( 'context', 'edit' );
	return $this->prepare_item_for_response( $item, $request );
}