is_user_member_of_blog

函式
is_user_member_of_blog ( $user_id = 0, $blog_id = 0 )
引數
  • (int) $user_id Optional. The unique ID of the user. Defaults to the current user.
    Required:
  • (int) $blog_id Optional. ID of the blog to check. Defaults to the current site.
    Required:
返回值
  • (bool)
定義位置
相關方法
get_users_of_blogadd_user_to_blogadd_existing_user_to_blogadd_new_user_to_blogis_user_option_local
引入
-
棄用
-

is_user_member_of_blog是一個WordPress函式,它檢查給定的使用者是否是指定部落格的成員。它接收兩個引數,使用者ID和部落格ID,如果使用者是部落格的成員,則返回布林值true,否則返回false。

找出一個使用者是否是某個部落格的成員。

function is_user_member_of_blog( $user_id = 0, $blog_id = 0 ) {
	global $wpdb;

	$user_id = (int) $user_id;
	$blog_id = (int) $blog_id;

	if ( empty( $user_id ) ) {
		$user_id = get_current_user_id();
	}

	// Technically not needed, but does save calls to get_site() and get_user_meta()
	// in the event that the function is called when a user isn't logged in.
	if ( empty( $user_id ) ) {
		return false;
	} else {
		$user = get_userdata( $user_id );
		if ( ! $user instanceof WP_User ) {
			return false;
		}
	}

	if ( ! is_multisite() ) {
		return true;
	}

	if ( empty( $blog_id ) ) {
		$blog_id = get_current_blog_id();
	}

	$blog = get_site( $blog_id );

	if ( ! $blog || ! isset( $blog->domain ) || $blog->archived || $blog->spam || $blog->deleted ) {
		return false;
	}

	$keys = get_user_meta( $user_id );
	if ( empty( $keys ) ) {
		return false;
	}

	// No underscore before capabilities in $base_capabilities_key.
	$base_capabilities_key = $wpdb->base_prefix . 'capabilities';
	$site_capabilities_key = $wpdb->base_prefix . $blog_id . '_capabilities';

	if ( isset( $keys[ $base_capabilities_key ] ) && 1 == $blog_id ) {
		return true;
	}

	if ( isset( $keys[ $site_capabilities_key ] ) ) {
		return true;
	}

	return false;
}

常見問題

FAQs
檢視更多 >