更新数据库中用户的状态。

原型

update_user_status( int $id, string $pref, int $value, null $deprecated = null )

描述

在核心中用于在Multisite中将用户标记为垃圾邮件或“火腿”(非垃圾邮件)。

参数

$id (int) (Required) 用户ID。

$pref (string) (Required) wp_users表中的列用于更新用户的状态(可能是user_status,垃圾邮件或已删除)。

$value (int) (Required) 用户的新状态。

$deprecated (null) (Optional) 自3.0.2起不推荐使用,不应使用。

返回值

(int)  最初通过了$ value。

源文件

路径:wp-admin/includes/ms.php

<?php
...
function update_user_status( $id, $pref, $value, $deprecated = null ) {
	global $wpdb;
	if ( null !== $deprecated )
		_deprecated_argument( __FUNCTION__, '3.0.2' );
	$wpdb->update( $wpdb->users, array( sanitize_key( $pref ) => $value ), array( 'ID' => $id ) );
	$user = new WP_User( $id );
	clean_user_cache( $user );
	if ( $pref == 'spam' ) {
		if ( $value == 1 ) {
			/**
			 * Fires after the user is marked as a SPAM user.
			 *
			 * @since 3.0.0
			 *
			 * @param int $id ID of the user marked as SPAM.
			 */
			do_action( 'make_spam_user', $id );
		} else {
			/**
			 * Fires after the user is marked as a HAM user. Opposite of SPAM.
			 *
			 * @since 3.0.0
			 *
			 * @param int $id ID of the user marked as HAM.
			 */
			do_action( 'make_ham_user', $id );
		}
	}
	return $value;
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/update_user_status/