it-swarm.com.de

Wie zeige ich Fehlermeldungen mit der WP_Error-Klasse an?

Ich habe den Code des Registrierungsformulars in meiner functions.php-Datei

if ('POST' == $_SERVER['REQUEST_METHOD'] && !empty($_POST['action']) && $_POST['action'] == 'registration') {
       $error = new WP_Error();
        if (empty(esc_attr($_POST['email'])))
        {
            $error->add('regerror','Email is required.');
        }
        if (!is_email(esc_attr($_POST['email'])))
        {
            $error->add('regerror','Invalid email format.');

        }
        if (email_exists(esc_attr($_POST['email'])))
        {
            $error->add('regerror','Email already in use. Did you forget your Password? If yes click here to reset.');

        }
}

Kann mir jetzt jemand sagen, wie ich diese Fehlermeldungen in meinem register page anzeigen soll?

Aktualisieren:

Meine Registrierungsseite enthält den folgenden Code

<form method="post" action="<?php the_permalink(); ?>">
<!-- form fields goes here -->
<input name="action" type="hidden" value="registration" />
<input type="submit" id="submit" value="Register">
</form>
2
Giri

Damit müssten Sie in functions.php wahrscheinlich $error deklarieren, um global zu sein:

if ('POST' == $_SERVER['REQUEST_METHOD'] && !empty($_POST['action']) && $_POST['action'] == 'registration') {
    global $error;
    $error = new WP_Error();
    // the rest of your code

Und dann global $error; erneut auf Ihrer Registrierungsseite eingeben, bevor Sie versuchen, sie zu verwenden.

Aber ich verstehe nicht, warum Sie diesen Code in functions.php haben. Das scheint mir ein schlechtes Design zu sein. Sie führen diese if-Bedingung jedes Mal aus, wenn eine Seite geladen wird, und es scheint, als ob Sie sie nur auf Ihrer Registrierungsseite benötigen. Ich gehe davon aus, dass Sie diese selbst geschrieben haben und nicht über die eingebaute Registrierung sprechen.) Anmeldeseite unter wp-login.php. Unter dieser Annahme verschieben Sie diesen Code einfach auf die Registrierungsseite, und es wird problemlos verfügbar sein. WP_Error verfügt über Methoden, mit denen Sie auf die Daten zugreifen können.

3
s_ha_dum