wp_die

函数
wp_die ( $message = '', $title = '', $args = array() )
参数
  • (string|WP_Error) $message Optional. Error message. If this is a WP_Error object, and not an Ajax or XML-RPC request, the error's messages are used. Default empty.
    Required:
    Default: (empty)
  • (string|int) $title Optional. Error title. If `$message` is a `WP_Error` object, error data with the key 'title' may be used to specify the title. If `$title` is an integer, then it is treated as the response code. Default empty.
    Required:
    Default: (empty)
  • (string|array|int) $args { Optional. Arguments to control behavior. If `$args` is an integer, then it is treated as the response code. Default empty array. @type int $response The HTTP response code. Default 200 for Ajax requests, 500 otherwise. @type string $link_url A URL to include a link to. Only works in combination with $link_text. Default empty string. @type string $link_text A label for the link to include. Only works in combination with $link_url. Default empty string. @type bool $back_link Whether to include a link to go back. Default false. @type string $text_direction The text direction. This is only useful internally, when WordPress is still loading and the site's locale is not set up yet. Accepts 'rtl' and 'ltr'. Default is the value of is_rtl(). @type string $charset Character set of the HTML output. Default 'utf-8'. @type string $code Error code to use. Default is 'wp_die', or the main error code if $message is a WP_Error. @type bool $exit Whether to exit the process after completion. Default true. }
    Required:
    Default: array()
定义位置
相关方法
wp_datewp_redirectwp_titlewp_editorwp_iframe
引入
2.0.4
弃用
-

wp_die: 这个函数用来显示错误信息并退出WordPress中当前的PHP脚本执行。它可以用来处理WordPress网站中的致命错误或其他意外状况。

杀死WordPress的执行,并显示带有错误信息的HTML页面。

这个函数是对`die()`PHP函数的补充。不同的是,HTML将被显示给用户。建议只在执行不应继续下去的时候使用这个函数。不建议经常调用这个函数,而应该尽可能多地处理错误
默默地或更优雅地处理。

作为一种速记方法,所需的HTTP响应代码可以作为一个整数传递给`$title`参数(默认的标题将适用)或`$args`参数。

function wp_die( $message = '', $title = '', $args = array() ) {
	global $wp_query;

	if ( is_int( $args ) ) {
		$args = array( 'response' => $args );
	} elseif ( is_int( $title ) ) {
		$args  = array( 'response' => $title );
		$title = '';
	}

	if ( wp_doing_ajax() ) {
		/**
		 * Filters the callback for killing WordPress execution for Ajax requests.
		 *
		 * @since 3.4.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_ajax_handler', '_ajax_wp_die_handler' );
	} elseif ( wp_is_json_request() ) {
		/**
		 * Filters the callback for killing WordPress execution for JSON requests.
		 *
		 * @since 5.1.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_json_handler', '_json_wp_die_handler' );
	} elseif ( defined( 'REST_REQUEST' ) && REST_REQUEST && wp_is_jsonp_request() ) {
		/**
		 * Filters the callback for killing WordPress execution for JSONP REST requests.
		 *
		 * @since 5.2.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_jsonp_handler', '_jsonp_wp_die_handler' );
	} elseif ( defined( 'XMLRPC_REQUEST' ) && XMLRPC_REQUEST ) {
		/**
		 * Filters the callback for killing WordPress execution for XML-RPC requests.
		 *
		 * @since 3.4.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_xmlrpc_handler', '_xmlrpc_wp_die_handler' );
	} elseif ( wp_is_xml_request()
		|| isset( $wp_query ) &&
			( function_exists( 'is_feed' ) && is_feed()
			|| function_exists( 'is_comment_feed' ) && is_comment_feed()
			|| function_exists( 'is_trackback' ) && is_trackback() ) ) {
		/**
		 * Filters the callback for killing WordPress execution for XML requests.
		 *
		 * @since 5.2.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_xml_handler', '_xml_wp_die_handler' );
	} else {
		/**
		 * Filters the callback for killing WordPress execution for all non-Ajax, non-JSON, non-XML requests.
		 *
		 * @since 3.0.0
		 *
		 * @param callable $callback Callback function name.
		 */
		$callback = apply_filters( 'wp_die_handler', '_default_wp_die_handler' );
	}

	call_user_func( $callback, $message, $title, $args );
}

常见问题

FAQs
查看更多 >