wp_get_users_with_no_role

函数
wp_get_users_with_no_role ( $site_id = null )
参数
  • (int|null) $site_id Optional. The site ID to get users with no role for. Defaults to the current site.
    Required:
    Default: null
返回值
  • (string[]) Array of user IDs as strings.
定义位置
相关方法
wp_get_session_tokenwp_get_user_requestget_user_to_editwp_get_sidebars_widgetsget_users_of_blog
引入
4.4.0
弃用
-

wp_get_users_with_no_role: 这个函数检索一个没有分配给他们角色的用户数组。它返回一个WP_User对象的数组,代表没有角色的用户。

获取本网站上所有没有角色的用户的用户ID。

function wp_get_users_with_no_role( $site_id = null ) {
	global $wpdb;

	if ( ! $site_id ) {
		$site_id = get_current_blog_id();
	}

	$prefix = $wpdb->get_blog_prefix( $site_id );

	if ( is_multisite() && get_current_blog_id() != $site_id ) {
		switch_to_blog( $site_id );
		$role_names = wp_roles()->get_names();
		restore_current_blog();
	} else {
		$role_names = wp_roles()->get_names();
	}

	$regex = implode( '|', array_keys( $role_names ) );
	$regex = preg_replace( '/[^a-zA-Z_|-]/', '', $regex );
	$users = $wpdb->get_col(
		$wpdb->prepare(
			"
		SELECT user_id
		FROM $wpdb->usermeta
		WHERE meta_key = '{$prefix}capabilities'
		AND meta_value NOT REGEXP %s
	",
			$regex
		)
	);

	return $users;
}

常见问题

FAQs
查看更多 >