WP_REST_Widgets_Controller::get_items
Retrieves a collection of widgets.
Method of the class: WP_REST_Widgets_Controller{}
No Hooks.
Returns
WP_REST_Response. Response object.
Usage
$WP_REST_Widgets_Controller = new WP_REST_Widgets_Controller(); $WP_REST_Widgets_Controller->get_items( $request );
- $request(WP_REST_Request) (required)
- Full details about the request.
Changelog
| Since 5.8.0 | Introduced. |
WP_REST_Widgets_Controller::get_items() WP REST Widgets Controller::get items code WP 7.0
public function get_items( $request ) {
if ( $request->is_method( 'HEAD' ) ) {
// Return early as this handler doesn't add any response headers.
return new WP_REST_Response( array() );
}
$this->retrieve_widgets();
$prepared = array();
$permissions_check = $this->permissions_check( $request );
foreach ( wp_get_sidebars_widgets() as $sidebar_id => $widget_ids ) {
if ( isset( $request['sidebar'] ) && $sidebar_id !== $request['sidebar'] ) {
continue;
}
if ( is_wp_error( $permissions_check ) && ! $this->check_read_sidebar_permission( $sidebar_id ) ) {
continue;
}
foreach ( $widget_ids as $widget_id ) {
$response = $this->prepare_item_for_response( compact( 'sidebar_id', 'widget_id' ), $request );
if ( ! is_wp_error( $response ) ) {
$prepared[] = $this->prepare_response_for_collection( $response );
}
}
}
return new WP_REST_Response( $prepared );
}