添加用户

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

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

创建用户

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

它使用 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 );

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

当创建用户(用户 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 数组/对象传递。

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

如果正在更新当前用户的密码,则 Cookie 将被清除!

请参阅关于 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。

在用户被删除后,该函数执行 deleted_user 操作。

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

请参阅关于 wp_delete_user() 的函数参考以获取所用参数的完整说明。