get_editable_user_ids

函数
get_editable_user_ids ( $user_id, $exclude_zeros = true, $post_type = 'post' )
参数
  • (int) $user_id User ID.
    Required:
  • (bool) $exclude_zeros Optional. Whether to exclude zeroes. Default true.
    Required:
    Default: true
返回值
  • (array) Array of editable user IDs, empty array otherwise.
定义位置
相关方法
get_editable_authorsget_edit_user_linkget_editable_rolesget_author_user_ids_get_additional_user_keys
引入
-
弃用
3.1.0

get_editable_user_ids: 这个函数用来检索可以被当前用户编辑的用户ID的列表。这可以用来定制网站的用户管理功能的行为。

获取任何可以编辑文章的用户的ID。

function get_editable_user_ids( $user_id, $exclude_zeros = true, $post_type = 'post' ) {
	_deprecated_function( __FUNCTION__, '3.1.0', 'get_users()' );

	global $wpdb;

	if ( ! $user = get_userdata( $user_id ) )
		return array();
	$post_type_obj = get_post_type_object($post_type);

	if ( ! $user->has_cap($post_type_obj->cap->edit_others_posts) ) {
		if ( $user->has_cap($post_type_obj->cap->edit_posts) || ! $exclude_zeros )
			return array($user->ID);
		else
			return array();
	}

	if ( !is_multisite() )
		$level_key = $wpdb->get_blog_prefix() . 'user_level';
	else
		$level_key = $wpdb->get_blog_prefix() . 'capabilities'; // WPMU site admins don't have user_levels.

	$query = $wpdb->prepare("SELECT user_id FROM $wpdb->usermeta WHERE meta_key = %s", $level_key);
	if ( $exclude_zeros )
		$query .= " AND meta_value != '0'";

	return $wpdb->get_col( $query );
}

常见问题

FAQs
查看更多 >