WP_REST_Terms_Controller::check_read_terms_permission_for_post()publicWP 6.0.3

Checks if the terms for a post can be read.

Method of the class: WP_REST_Terms_Controller{}

No Hooks.

Return

true|false. Whether the terms for the post can be read.

Usage

$WP_REST_Terms_Controller = new WP_REST_Terms_Controller();
$WP_REST_Terms_Controller->check_read_terms_permission_for_post( $post, $request );
$post(WP_Post) (required)
Post object.
$request(WP_REST_Request) (required)
Full details about the request.

Changelog

Since 6.0.3 Introduced.

WP_REST_Terms_Controller::check_read_terms_permission_for_post() code WP 6.5.2

public function check_read_terms_permission_for_post( $post, $request ) {
	// If the requested post isn't associated with this taxonomy, deny access.
	if ( ! is_object_in_taxonomy( $post->post_type, $this->taxonomy ) ) {
		return false;
	}

	// Grant access if the post is publicly viewable.
	if ( is_post_publicly_viewable( $post ) ) {
		return true;
	}

	// Otherwise grant access if the post is readable by the logged in user.
	if ( current_user_can( 'read_post', $post->ID ) ) {
		return true;
	}

	// Otherwise, deny access.
	return false;
}