WP_REST_Themes_Controller::get_item_permissions_check( WP_REST_Request $request )
Checks if a given request has access to read the theme.
Parameters
- $request
-
(Required) Full details about the request.
Return
(bool|WP_Error) True if the request has read access for the item, otherwise WP_Error object.
Source
File: wp-includes/rest-api/endpoints/class-wp-rest-themes-controller.php
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() )
);
}
Changelog
Version | Description |
---|---|
5.7.0 | Introduced. |