# author_can()

URL: https://chugunov.pro/api-wordpress/functions/author_can/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 2.9.0.

## Сигнатура

```php
author_can( int|WP_Post $post, string $capability, mixed $args ): bool
```

## Описание

Эта функция также принимает ID объекта для проверки, если право доступа является метаправом. Метаправа, такие как edit_post и edit_user, — это права, которые функция map_meta_cap() использует для сопоставления с примитивными правами, которыми обладает пользователь или роль, такими как edit_posts и edit_others_posts.
Пример использования:
author_can( $post, 'edit_posts' );
author_can( $post, 'edit_post', $post->ID );
author_can( $post, 'edit_post_meta', $post->ID, $meta_key );

## Параметры

- `$post` `int|WP_Post` — обязательный. Идентификатор записи или объект записи.
- `$capability` `string` — обязательный. Имя права доступа.
- `$args` `mixed` — необязательный. Необязательные дополнительные параметры, обычно начинающиеся с ID объекта.

## Возвращаемое значение

`bool`

## Исходный код

Файл: `wp-includes/capabilities.php:973`

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

## История изменений

- 5.3.0 — Formalized the existing and already documented ...$args parameter by adding it to the function signature.
- 2.9.0 — Introduced.

## Связанные

Использует: [`get_userdata`](https://chugunov.pro/api-wordpress/functions/get_userdata/), [`get_post`](https://chugunov.pro/api-wordpress/functions/get_post/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/author_can/
