php - WordPress:如何在另一个页面上显示 WP_Error() 错误?

标签 php wordpress error-handling

如何在另一个页面上显示 WP_Error() 错误?

functions.php中,我有一个带有以下代码的表单处理器:

global $current_user, $errors; get_currentuserinfo();

$errors = new WP_Error();

if( isset( $_POST['user_email']) ) {
    if( !is_email( $_POST['user_email'] ) ) {
        $errors->add('invalid_email', __('<strong>ERROR</strong>: The email address isn&#8217;t correct.'));
    } elseif( email_exists( $_POST['user_email'] ) ) {
        $errors->add('email_exists', __('<strong>ERROR</strong>: This email is already registered, please choose another one.'));
    } elseif( $_POST['user_email'] <> $current_user->{user_email} ) {
        wp_update_user( array( 'ID' => $uid, 'user_email' => esc_attr( $_POST['user_email'] ) ) );
    }       
}
if($errors->get_error_code()) { return $errors; }

在显示表单的 account.php 中,我有以下代码:

<?php
    $return = update_account();
    if(is_wp_error($return)) { echo $return->get_error_message(); }
?>

测试期间不会报告 invalid_emailemail_exist 错误。但是,错误是可以避免的。我只是不明白为什么它们没有被显示。我做错了什么?

最佳答案

您需要将全局 $errors 放在您的帐户页面上。

关于php - WordPress:如何在另一个页面上显示 WP_Error() 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7977256/

相关文章:

php - Jquery ui 与 php/mysql 的问题

php - Magento 通过商店 ID 或商店代码获取当前页面标题

php - Bootstrap Tour 在第一步循环 [wordpress]

javascript - 如何重构我的 React 组件以接受一组错误,并在 error.show = true 对于其中任何一个错误时显示错误消息

error-handling - 尝试并捕获帕斯卡

php - 使用php7从MySQL打印数据

php - 重力形式创建唯一 ID

javascript - 从新的 WordPress 媒体 uploader 获取 JS 回调

java - Java中的StackOverflowError

php - 检索域名而不是 IP