描述
此函数是die()
PHP函数的补充。不同之处在于,HTML将显示给用户。建议仅在执行不再继续时使用此函数。不建议经常调用此函数,并尝试以静默或更优雅的方式处理尽可能多的错误。
简而言之,所需的HTTP响应代码可以作为整数传递给$title
参数(默认标题适用)或$args
参数。
参数
- $message
-
(string|WP_Error)(可选) 错误消息。如果这是WP_Error对象,而不是Ajax或XML-RPC请求,则使用错误消息。
默认值: ''
- $title
-
(string|int)(可选) 错误标题。如果
$message
是WP_Error
对象,则可以使用带有'title'键的错误数据来指定标题。如果$title
是整数,则将其视为响应代码。默认值: ''
- $args
-
(string|array|int)(可选) 控制行为的参数。如果
$args
是整数,则将其视为响应代码。- 'response'
(int) HTTP响应代码。Ajax请求默认为200,否则为500。 - 'link_url'
(string) 包含指向的链接的URL。仅与$link_text结合使用。默认为空字符串。 - 'link_text'
(string) 链接要包含的label标签。仅与$link_url结合使用。默认为空字符串。 - 'back_link'
(bool) 是否包含要返回的链接。默认值为false。 - 'text_direction'
(string) 文本方向。这仅在WordPress仍在加载且站点的区域设置尚未设置时在内部有用。接受'rtl'和'ltr'。默认值为is_rtl()。 - 'charset'
(string) HTML输出的字符集。默认值为'utf-8'。 - 'code'
(string) 要使用的错误代码。默认值为'wp_die',如果$message是WP_Error,则为主要错误代码。 - 'exit'
(bool) 完成后是否退出流程。默认为true。
默认值: array()
- 'response'
更多信息
您可以添加WP_Error对象,如果您这样做了,您可以添加:$data['title'],并将其自动作为模板页面的(默认/可覆盖)标题
源码
更新日志
版本 | 描述 |
---|---|
5.5.0 | 在默认处理程序中,$text_direction 参数的优先级高于get_language_attributes()。 |
5.3.0 | 添加了$charset 参数。 |
5.1.0 | 添加了$link_url 、$link_text 和$exit 参数。 |
4.1.0 | $title 和$args 参数已更改为可选地接受一个整数作为响应代码。 |
2.0.4 | 开始引入 |
使用示例
测试以查看过滤器中
$post
变量中的内容:/** * Add new body class. * * Testing what is in the $post variable. * * @param array $classes Body classes. */ function wpdocs_add_body_class( $classes ) { /** @global WP_Post $post */ global $post; wp_die( '<pre>' . var_export( $post, true ) . '</pre>' ); } add_filter( 'body_class', 'wpdocs_add_body_class' );
您可以在函数末尾使用
wp_die()
关闭AJAX请求。例如,您会收到HTML代码,您可以通过JS使用它。但是如果需要向AJAX请求返回正确的字符串值,可以考虑使用wp_send_json()
。(我假设您还可以返回数组或对象)。Codex表明wp_send_json()
使用wp_die()
。wp_die( 'string' ) // received by JS as '\nstring' wp_send_json( 'string' ) // received by JS as 'string'