WP_REST_Themes_Controller::get_item_permissions_check( WP_REST_Request $request ): bool|WP_Error

Checks if a given request has access to read the theme.


Parameters

$request WP_REST_Request Required
Full details about the request.

Top ↑

Return

bool|WP_Error True if the request has read access for the item, otherwise WP_Error object.


Top ↑

Source

File: wp-includes/rest-api/endpoints/class-wp-rest-themes-controller.php. View all references

public function get_item_permissions_check( $request ) {
	if ( current_user_can( 'switch_themes' ) || current_user_can( 'manage_network_themes' ) ) {
		return true;
	}

	$wp_theme      = wp_get_theme( $request['stylesheet'] );
	$current_theme = wp_get_theme();

	if ( $this->is_same_theme( $wp_theme, $current_theme ) ) {
		return $this->check_read_active_theme_permission();
	}

	return new WP_Error(
		'rest_cannot_view_themes',
		__( 'Sorry, you are not allowed to view themes.' ),
		array( 'status' => rest_authorization_required_code() )
	);
}


Top ↑

Changelog

Changelog
Version Description
5.7.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.