WP_Application_Passwords::update_application_password() public WP 5.6.0
Updates an application password.
{} It's a method of the class: WP_Application_Passwords{}
Hooks from the method
Return
true|WP_Error
. True if successful, otherwise a WP_Error instance is returned on error.
Usage
$result = WP_Application_Passwords::update_application_password( $user_id, $uuid, $update );
- $user_id(int) (required)
- User ID.
- $uuid(string) (required)
- The password's uuid.
- $update(array)
- Information about the application password to update.
Changelog
Since 5.6.0 | Introduced. |
Code of WP_Application_Passwords::update_application_password() WP Application Passwords::update application password WP 5.7
public static function update_application_password( $user_id, $uuid, $update = array() ) {
$passwords = static::get_user_application_passwords( $user_id );
foreach ( $passwords as &$item ) {
if ( $item['uuid'] !== $uuid ) {
continue;
}
if ( ! empty( $update['name'] ) ) {
$update['name'] = sanitize_text_field( $update['name'] );
}
$save = false;
if ( ! empty( $update['name'] ) && $item['name'] !== $update['name'] ) {
$item['name'] = $update['name'];
$save = true;
}
if ( $save ) {
$saved = static::set_user_application_passwords( $user_id, $passwords );
if ( ! $saved ) {
return new WP_Error( 'db_error', __( 'Could not save application password.' ) );
}
}
/**
* Fires when an application password is updated.
*
* @since 5.6.0
*
* @param int $user_id The user ID.
* @param array $item The updated app password details.
* @param array $update The information to update.
*/
do_action( 'wp_update_application_password', $user_id, $item, $update );
return true;
}
return new WP_Error( 'application_password_not_found', __( 'Could not find an application password with that id.' ) );
}