ult = $values['block_callback']( $page ); $block = $result ? $result : $values['block']; $block_present = (bool) $result; } elseif ( $page && isset( $values['block'] ) ) { $block = $values['block']; $block_required = true; $block_present = has_block( $block, $page->post_content ); } // Wrap up our findings into an output array. $pages_output[] = array( 'page_name' => $page_name, 'page_id' => $page_id, 'page_set' => $page_set, 'page_exists' => $page_exists, 'page_visible' => $page_visible, 'shortcode' => $shortcode, 'block' => $block, 'shortcode_required' => $shortcode_required, 'shortcode_present' => $shortcode_present, 'block_present' => $block_present, 'block_required' => $block_required, ); } return $pages_output; } /** * Get info about the logging system. * * @return array */ protected function get_logging_info() { return array( 'logging_enabled' => LoggingUtil::logging_is_enabled(), 'default_handler' => LoggingUtil::get_default_handler(), 'retention_period_days' => LoggingUtil::get_retention_period(), 'level_threshold' => WC_Log_Levels::get_level_label( strtolower( LoggingUtil::get_level_threshold() ) ), 'log_directory_size' => size_format( LoggingUtil::get_log_directory_size() ), ); } /** * Get any query params needed. * * @return array */ public function get_collection_params() { return array( 'context' => $this->get_context_param( array( 'default' => 'view' ) ), ); } /** * Prepare the system status response * * @param array $system_status System status data. * @param WP_REST_Request $request Request object. * @return WP_REST_Response */ public function prepare_item_for_response( $system_status, $request ) { $data = $this->add_additional_fields_to_object( $system_status, $request ); $data = $this->filter_response_by_context( $data, 'view' ); $response = rest_ensure_response( $data ); /** * Filter the system status returned from the REST API. * * @param WP_REST_Response $response The response object. * @param mixed $system_status System status * @param WP_REST_Request $request Request object. */ return apply_filters( 'woocommerce_rest_prepare_system_status', $response, $system_status, $request ); } }