author_can()WP 2.9.0

Проверяет указанную возможность или роль, у автора указанного поста.

1 раз — 0.002667 сек (очень медленно) | 50000 раз — 1.86 сек (быстро) | PHP 7.1.11, WP 4.9.4

Хуков нет.

Возвращает

true|false.

  • true - если возможность найдена.
  • false - если нет.

Использование

author_can( $post, $capability );
$post(число/объект) (обязательный)
ID или объект поста, возможности автора которого нужно проверить.
$capability(строка) (обязательный)
Название возможности или роли, которую нужно проверить.

Примеры

2

#1 Проверим может ли автор текущего поста ($post->ID) публиковать посты:

if( author_can($post->ID, 'publish_posts') ){
	echo 'Автор записи может публиковать посты!';
}

Список изменений

С версии 2.9.0 Введена.
С версии 5.3.0 Formalized the existing and already documented ...$args parameter by adding it to the function signature.

Код author_can() WP 6.4.3

function author_can( $post, $capability, ...$args ) {
	$post = get_post( $post );
	if ( ! $post ) {
		return false;
	}

	$author = get_userdata( $post->post_author );

	if ( ! $author ) {
		return false;
	}

	return $author->has_cap( $capability, ...$args );
}