函数文档

is_user_spammy()

💡 云策文档标注

概述

is_user_spammy() 函数用于基于用户登录信息判断用户是否被标记为垃圾用户。它接受一个可选参数,可以是 WP_User 对象或用户登录名字符串,默认检查当前用户。

关键要点

  • 函数接受一个可选参数 $user,可以是 WP_User 对象或用户登录名字符串,默认值为 null,表示检查当前用户。
  • 函数内部逻辑:如果 $user 不是 WP_User 对象,则根据参数类型调用 get_user_by() 或 wp_get_current_user() 获取用户对象。
  • 返回值是布尔值:如果用户存在且其 spam 属性设置为 '1',则返回 true,否则返回 false。
  • 该函数在 WordPress MU(3.0.0)版本中引入,主要用于多站点环境。

代码示例

function is_user_spammy( $user = null ) {
	if ( ! ( $user instanceof WP_User ) ) {
		if ( $user ) {
			$user = get_user_by( 'login', $user );
		} else {
			$user = wp_get_current_user();
		}
	}

	return $user && isset( $user->spam ) && '1' === $user->spam;
}

注意事项

  • 该函数依赖于用户对象的 spam 属性,通常用于多站点博客中检查用户是否被标记为垃圾用户。
  • 相关函数包括 get_user_by() 和 wp_get_current_user(),用于获取用户信息。
  • 被 wp_is_password_reset_allowed_for_user() 和 wp_authenticate_spam_check() 等函数调用,以处理用户认证和密码重置逻辑。

📄 原文内容

Determines whether a user is marked as a spammer, based on user login.

Parameters

$userstring|WP_Useroptional
Defaults to current user. WP_User object, or user login name as a string.

Default:null

Return

bool

Source

function is_user_spammy( $user = null ) {
	if ( ! ( $user instanceof WP_User ) ) {
		if ( $user ) {
			$user = get_user_by( 'login', $user );
		} else {
			$user = wp_get_current_user();
		}
	}

	return $user && isset( $user->spam ) && '1' === $user->spam;
}

Changelog

Version Description
MU (3.0.0) Introduced.