Title: get_editable_user_ids
Published: April 25, 2014
Last modified: February 24, 2026

---

# get_editable_user_ids( int $user_id, bool $exclude_zeros = true,  $post_type ): array

## In this article

 * [Parameters](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#parameters)
 * [Return](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#wp--skip-link--target)

This function has been deprecated since 3.1.0. Use get_users() instead.

Gets the IDs of any users who can edit posts.

## 󠀁[Parameters](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#parameters)󠁿

 `$user_id`intrequired

User ID.

`$exclude_zeros`booloptional

Whether to exclude zeroes.

Default:`true`

## 󠀁[Return](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#return)󠁿

 array Array of editable user IDs, empty array otherwise.

## 󠀁[Source](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#source)󠁿

    ```php
    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 );
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-admin/includes/deprecated.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/6.9.4/src/wp-admin/includes/deprecated.php#L284)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/6.9.4/src/wp-admin/includes/deprecated.php#L284-L310)

## 󠀁[Related](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#related)󠁿

| Uses | Description | 
| [wpdb::get_col()](https://developer.wordpress.org/reference/classes/wpdb/get_col/)`wp-includes/class-wpdb.php` |

Retrieves one column from the database.

  | 
| [wpdb::get_blog_prefix()](https://developer.wordpress.org/reference/classes/wpdb/get_blog_prefix/)`wp-includes/class-wpdb.php` |

Gets blog prefix.

  | 
| [get_userdata()](https://developer.wordpress.org/reference/functions/get_userdata/)`wp-includes/pluggable.php` |

Retrieves user info by user ID.

  | 
| [is_multisite()](https://developer.wordpress.org/reference/functions/is_multisite/)`wp-includes/load.php` |

Determines whether Multisite is enabled.

  | 
| [_deprecated_function()](https://developer.wordpress.org/reference/functions/_deprecated_function/)`wp-includes/functions.php` |

Marks a function as deprecated and inform when it has been used.

  | 
| [get_post_type_object()](https://developer.wordpress.org/reference/functions/get_post_type_object/)`wp-includes/post.php` |

Retrieves a post type object by name.

  | 
| [wpdb::prepare()](https://developer.wordpress.org/reference/classes/wpdb/prepare/)`wp-includes/class-wpdb.php` |

Prepares a SQL query for safe execution.

  |

[Show 5 more](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#)
[Show less](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#)

| Used by | Description | 
| [get_editable_authors()](https://developer.wordpress.org/reference/functions/get_editable_authors/)`wp-admin/includes/deprecated.php` |

Gets author users who can edit posts.

  | 
| [get_others_unpublished_posts()](https://developer.wordpress.org/reference/functions/get_others_unpublished_posts/)`wp-admin/includes/deprecated.php` |

Retrieves editable posts from other users.

  |

## 󠀁[Changelog](https://developer.wordpress.org/reference/functions/get_editable_user_ids/?output_format=md#changelog)󠁿

| Version | Description | 
| [3.1.0](https://developer.wordpress.org/reference/since/3.1.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Ffunctions%2Fget_editable_user_ids%2F)
before being able to contribute a note or feedback.