函数文档

is_site_admin()

💡 云策文档标注

概述

is_site_admin() 是一个已弃用的 WordPress 函数,用于检查用户是否为站点管理员。自 3.0.0 版本起,建议使用 is_super_admin() 替代。

关键要点

  • 此函数已弃用,应使用 is_super_admin() 来检查用户是否为超级管理员。
  • 函数接受一个可选参数 $user_login(用户名),默认为空,用于指定要检查的用户。
  • 如果未提供 $user_login,函数会检查当前登录用户;否则,通过 get_user_by() 获取用户信息。
  • 函数内部调用 is_super_admin() 来执行实际检查,并返回布尔值。
  • 插件应使用 is_multisite() 而不是检查此函数是否存在来确定是否启用了多站点。

代码示例

function is_site_admin( $user_login = '' ) {
    _deprecated_function( __FUNCTION__, '3.0.0', 'is_super_admin()' );

    if ( empty( $user_login ) ) {
        $user_id = get_current_user_id();
        if ( !$user_id )
            return false;
    } else {
        $user = get_user_by( 'login', $user_login );
        if ( ! $user->exists() )
            return false;
        $user_id = $user->ID;
    }

    return is_super_admin( $user_id );
}

注意事项

  • 此函数自 WordPress 3.0.0 起已弃用,使用时会触发 _deprecated_function() 警告。
  • 在多站点环境中,应优先使用 is_super_admin() 来确保兼容性和正确性。

📄 原文内容

Determine if user is a site admin.

Description

Plugins should use is_multisite() instead of checking if this function exists to determine if multisite is enabled.

This function must reside in a file included only if is_multisite() due to legacy function_exists() checks to determine if multisite is enabled.

See also

Parameters

$user_loginstringoptional
Username for the user to check. Default empty.

Source

function is_site_admin( $user_login = '' ) {
	_deprecated_function( __FUNCTION__, '3.0.0', 'is_super_admin()' );

	if ( empty( $user_login ) ) {
		$user_id = get_current_user_id();
		if ( !$user_id )
			return false;
	} else {
		$user = get_user_by( 'login', $user_login );
		if ( ! $user->exists() )
			return false;
		$user_id = $user->ID;
	}

	return is_super_admin( $user_id );
}

Changelog

Version Description
3.0.0 Deprecated. Use is_super_admin()
MU (3.0.0) Introduced.