graceful_fail_template
云策文档标注
概述
本文档介绍了 WordPress 中已弃用的 graceful_fail 函数,用于处理错误消息并输出模板化错误页面。该函数已被 wp_die() 替代,并提供了相关过滤钩子。
关键要点
- graceful_fail 函数已弃用,自版本 3.0.0 起建议使用 wp_die() 替代。
- 函数接受一个消息参数,可通过 graceful_fail 过滤钩子进行修改。
- 错误页面模板可通过 graceful_fail_template 过滤钩子自定义,默认包含错误标题和消息。
- 函数内部调用 wp_die() 来输出错误页面,并设置响应状态码为 200。
代码示例
function graceful_fail( $message ) {
_deprecated_function( __FUNCTION__, '3.0.0', 'wp_die()' );
$message = apply_filters( 'graceful_fail', $message );
$message_template = apply_filters( 'graceful_fail_template',
'<h1>Error!</h1>
<p>%s</p>
<p><a href="https://developer.wordpress.org/reference/">View all references</a> | <a href="https://core.trac.wordpress.org/">View on Trac</a> | <a href="https://github.com/WordPress/WordPress">View on GitHub</a></p>',
$message
);
wp_die( sprintf( $message_template, $message ), '', array( 'response' => 200 ) );
}注意事项
- 由于函数已弃用,新代码应直接使用 wp_die() 来处理错误。
- 自定义错误模板时,需确保模板字符串包含占位符 %s 以插入消息。
- 响应状态码固定为 200,可能不适用于所有错误场景,需根据实际需求调整。
原文内容
Source
* @see wp_die()
*/
function graceful_fail( $message ) {
_deprecated_function( __FUNCTION__, '3.0.0', 'wp_die()' );
$message = apply_filters( 'graceful_fail', $message );
$message_template = apply_filters( 'graceful_fail_template',
'
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Error!</title>
<style type="text/css">
img {
border: 0;
}
body {
line-height: 1.6em; font-family: Georgia, serif; width: 390px; margin: auto;
text-align: center;
}
.message {
font-size: 22px;
width: 350px;
margin: auto;
}
</style>