From 9a9d29019dcbb26dc5c36d21f69c0f646e18c192 Mon Sep 17 00:00:00 2001 From: ryan Date: Fri, 5 Nov 2010 17:04:46 +0000 Subject: [PATCH] Introduce user_can(). Props simonwheatley. fixes #14602 git-svn-id: http://svn.automattic.com/wordpress/trunk@16209 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- 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. *