Title: WP_REST_Posts_Controller::check_password_required
Published: April 15, 2021
Last modified: August 20, 2026

---

# WP_REST_Posts_Controller::check_password_required( bool $required, WP_Post $post ): bool

## In this article

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

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

Overrides the result of the post password check for REST requested posts.

## 󠀁[Description](https://developer.wordpress.org/reference/classes/wp_rest_posts_controller/check_password_required/?output_format=md#description)󠁿

Allow users to read the content of password protected posts if they have previously
passed a permission check or if they have the `edit_post` capability for the post
being checked.

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

 `$required`boolrequired

Whether the post requires a password check.

`$post`[WP_Post](https://developer.wordpress.org/reference/classes/wp_post/)required

The post been password checked.

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

 bool Result of password check taking into account REST API considerations.

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

    ```php
    public function check_password_required( $required, $post ) {
    	if ( ! $required ) {
    		return $required;
    	}

    	$post = get_post( $post );

    	if ( ! $post ) {
    		return $required;
    	}

    	if ( ! empty( $this->password_check_passed[ $post->ID ] ) ) {
    		// Password previously checked and approved.
    		return false;
    	}

    	return ! current_user_can( 'edit_post', $post->ID );
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/7.1/src/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php#L188)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/7.1/src/wp-includes/rest-api/endpoints/class-wp-rest-posts-controller.php#L188-L205)

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

| Uses | Description | 
| [current_user_can()](https://developer.wordpress.org/reference/functions/current_user_can/)`wp-includes/capabilities.php` |

Returns whether the current user has the specified capability.

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

Retrieves post data given a post ID or post object.

  |

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

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

## User Contributed Notes

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