wpseek.com
A WordPress-centric search engine for devs and theme authors



_jsonp_wp_die_handler › WordPress Function

Since5.2.0
Deprecatedn/a
_jsonp_wp_die_handler ( $message, $title = '', $args = array() )
Access:
  • private
Parameters: (3)
  • (string) $message Error message.
    Required: Yes
  • (string) $title Optional. Error title. Default empty string.
    Required: No
    Default: (empty)
  • (string|array) $args Optional. Arguments to control behavior. Default empty array.
    Required: No
    Default: array()
Defined at:
Codex:

Kills WordPress execution and displays JSONP response with an error message.

This is the handler for wp_die() when processing JSONP requests.


Source

function _jsonp_wp_die_handler( $message, $title = '', $args = array() ) {
	list( $message, $title, $parsed_args ) = _wp_die_process_input( $message, $title, $args );

	$data = array(
		'code'              => $parsed_args['code'],
		'message'           => $message,
		'data'              => array(
			'status' => $parsed_args['response'],
		),
		'additional_errors' => $parsed_args['additional_errors'],
	);

	if ( isset( $parsed_args['error_data'] ) ) {
		$data['data']['error'] = $parsed_args['error_data'];
	}

	if ( ! headers_sent() ) {
		header( "Content-Type: application/javascript; charset={$parsed_args['charset']}" );
		header( 'X-Content-Type-Options: nosniff' );
		header( 'X-Robots-Tag: noindex' );
		if ( null !== $parsed_args['response'] ) {
			status_header( $parsed_args['response'] );
		}
		nocache_headers();
	}

	$result         = wp_json_encode( $data );
	$jsonp_callback = $_GET['_jsonp'];
	echo '/**/' . $jsonp_callback . '(' . $result . ')';
	if ( $parsed_args['exit'] ) {
		die();
	}
}