# wp-console/2.5.1/includes/Traits/RESTResponseError.php

WP Console – WordPress PHP Console powered by PsySH, version 2.5.1. 39 lines.

- Page: https://pluginprobe.com/plugins/wp-console/2.5.1/code/includes/Traits/RESTResponseError.php
- Raw: https://pluginprobe.com/plugins/wp-console/2.5.1/raw/includes/Traits/RESTResponseError.php
- Modified: 2019-12-11T05:01:40+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/wp-console/2.5.1/code/includes/Traits/RESTResponseError.php#L10-L20`.

```php
<?php

namespace WPConsole\Traits;

use Exception;
use WPConsole\Exceptions\WPConsoleException;
use WP_Error;

trait RESTResponseError {

    /**
     * Send REST error response
     *
     * @since 1.3.0
     *
     * @param \Exception $e
     * @param string     $default_message
     *
     * @return \WP_Error
     */
    protected function send_response_error( Exception $e, $default_message = '' ) {
        if ( $e instanceof WPConsoleException ) {
            return new WP_Error(
                $e->get_error_code(),
                $e->get_message(),
                [ 'status' => $e->get_status_code() ]
            );
        }

        $default_message = $default_message ? $default_message : __( 'Something went wrong', 'wp-console' );

        return new WP_Error(
            'something_went_wrong',
            $default_message,
            [ 'status' => 422 ]
        );
    }
}

```
