From b8b7810f52b0f53a8395bd184654eaf8621618d5 Mon Sep 17 00:00:00 2001 From: Ryan Boren Date: Fri, 5 Nov 2010 17:04:46 +0000 Subject: [PATCH] Introduce user_can(). Props simonwheatley. fixes #14602 git-svn-id: https://develop.svn.wordpress.org/trunk@16209 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-includes/capabilities.php | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/wp-includes/capabilities.php b/wp-includes/capabilities.php index 93a9f687e0..2c28a0c080 100644 --- a/wp-includes/capabilities.php +++ b/wp-includes/capabilities.php @@ -1079,6 +1079,28 @@ function author_can( $post, $capability ) { return call_user_func_array( array( &$author, 'has_cap' ), $args ); } +/** + * Whether a particular user has capability or role. + * + * @since 3.1.0 + * + * @param int|object $user User ID or object. + * @param string $capability Capability or role name. + * @return bool + */ +function user_can( $user, $capability ) { + if ( ! is_object( $user ) ) + $user = new WP_User( $user ); + + if ( ! $user || ! $user->ID ) + return false; + + $args = array_slice( func_get_args(), 2 ); + $args = array_merge( array( $capability ), $args ); + + return call_user_func_array( array( &$user, 'has_cap' ), $args ); +} + /** * Retrieve role object. *