wp_is_application_passwords_available_for_user()
云策文档标注
概述
wp_is_application_passwords_available_for_user() 函数用于检查特定用户是否可使用应用程序密码功能。默认情况下所有用户均可使用,但可通过此函数或过滤器进行限制。
关键要点
- 函数接受一个必需参数 $user,类型为 int 或 WP_User,用于指定要检查的用户。
- 返回值为布尔类型,表示应用程序密码对该用户是否可用。
- 函数内部首先检查全局可用性(通过 wp_is_application_passwords_available()),然后验证用户对象是否存在。
- 提供过滤器 wp_is_application_passwords_available_for_user,允许开发者自定义可用性逻辑。
代码示例
function wp_is_application_passwords_available_for_user( $user ) {
if ( ! wp_is_application_passwords_available() ) {
return false;
}
if ( ! is_object( $user ) ) {
$user = get_userdata( $user );
}
if ( ! $user || ! $user->exists() ) {
return false;
}
return apply_filters( 'wp_is_application_passwords_available_for_user', true, $user );
}注意事项
- 函数在 WordPress 5.6.0 版本中引入。
- 相关函数包括 wp_is_application_passwords_available()、get_userdata() 和 apply_filters()。
- 在 WP_REST_Application_Passwords_Controller 和 wp_authenticate_application_password() 等场景中使用。
原文内容
Checks if Application Passwords is available for a specific user.
Description
By default all users can use Application Passwords. Use ‘wp_is_application_passwords_available_for_user’ to restrict availability to certain users.
Parameters
$userint|WP_Userrequired-
The user to check.
Source
function wp_is_application_passwords_available_for_user( $user ) {
if ( ! wp_is_application_passwords_available() ) {
return false;
}
if ( ! is_object( $user ) ) {
$user = get_userdata( $user );
}
if ( ! $user || ! $user->exists() ) {
return false;
}
/**
* Filters whether Application Passwords is available for a specific user.
*
* @since 5.6.0
*
* @param bool $available True if available, false otherwise.
* @param WP_User $user The user to check.
*/
return apply_filters( 'wp_is_application_passwords_available_for_user', true, $user );
}
Hooks
- apply_filters( ‘wp_is_application_passwords_available_for_user’, bool $available, WP_User $user )
-
Filters whether Application Passwords is available for a specific user.
Changelog
| Version | Description |
|---|---|
| 5.6.0 | Introduced. |