首页 / 插件开发手册 / 用户 / 用户的使用

用户的使用

添加用户

要添加用户,可以使用wp_create_user()wp_insert_user()

wp_create_user()仅使用用户名、密码和电子邮件参数创建用户,而wp_insert_user()接受描述用户及其属性的数组或对象。

 

创建用户

wp_create_user()允许您创建新的WordPress用户。

Note:它使用wp_slash()来转义值。PHP compact()函数创建具有这些值的数组。执行插入操作的wp_insert_user()

有关所用参数的完整说明,请参阅关于wp_create_user()的函数参考。

 

创建示例

// check if the username is taken
$user_id = username_exists( $user_name );

// check that the email address does not belong to a registered user
if ( ! $user_id && email_exists( $user_email ) === false ) {
	// create a random password
	$random_password = wp_generate_password( 12, false );
	// create the user
	$user_id = wp_create_user(
		$user_name,
		$random_password,
		$user_email
	);
}

 

插入用户

wp_insert_user( $userdata );

Note:该函数为大多数预定义属性调用过滤器。

该函数在创建用户(用户ID不存在)时执行动作user_register

该函数在更新用户(用户ID存在)时执行动作profile_update

有关所用参数的完整说明,请参阅关于wp_insert_user()的函数参考。

 

插入示例

下面是一个示例,展示了如何在填写网站个人资料字段的情况下插入新用户。

$username  = $_POST['username'];
$password  = $_POST['password'];
$website   = $_POST['website'];
$user_data = [
	'user_login' => $username,
	'user_pass'  => $password,
	'user_url'   => $website,
];

$user_id = wp_insert_user( $user_data );

// success
if ( ! is_wp_error( $user_id ) ) {
	echo 'User created: ' . $user_id;
}

 

更新用户

wp_update_user()更新数据库中的单个用户。更新数据在$userdata (array/object) 中传递。

要更新单个用户元数据,请改用update_user_meta()。要创建新用户,请改用wp_insert_user()

Note:如果当前用户的密码正在更新,那么cookies将被清除!

有关所用参数的完整解释,请参阅关于wp_update_user()的函数参考。

 

示例更新

下面的示例显示了如何更新用户的网站个人资料字段。

$user_id = 1;
$website = 'https://wordpress.org';

$user_id = wp_update_user(
	array(
		'ID'       => $user_id,
		'user_url' => $website,
	)
);

if ( is_wp_error( $user_id ) ) {
	// error
} else {
	// success
}

 

删除用户

wp_delete_user()删除用户,并可选地将相关实体重新分配给另一个用户ID。

Note:该函数在删除用户后执行操作deleted_user

Alert:如果$reassign参数未设置为有效的用户ID,则属于已删除用户的所有实体都将被删除!

有关所用参数的完整说明,请参阅关于wp_delete_user()的函数参考。