diff --git a/wp-includes/functions.php b/wp-includes/functions.php index b5138aff9b..1cb50feb6d 100644 --- a/wp-includes/functions.php +++ b/wp-includes/functions.php @@ -1293,9 +1293,31 @@ function wp_nonce_ays($action) { wp_die($html, $title); } -function wp_die($message, $title = '') { +function wp_die( $message, $title = '' ) { global $wp_locale; + if ( is_wp_error( $message ) ) { + if ( empty($title) ) { + $error_data = $message->get_error_data(); + if ( is_array($error_data) && isset($error_data['title']) ) + $title = $error_data['title']; + } + $errors = $message->get_error_messages(); + switch ( count($errors) ) : + case 0 : + $message = ''; + break; + case 1 : + $message = "

{$errors[0]}

"; + break; + default : + $message = ""; + break; + endswitch; + } elseif ( is_string($message) ) { + $message = "

$message

"; + } + header('Content-Type: text/html; charset=utf-8'); if ( empty($title) ) @@ -1319,11 +1341,11 @@ function wp_die($message, $title = '') {

WordPress

-

+ +