excluded excluded - 1 year ago 74
PHP Question

Render login form in my custom theme Wordpress

I render login form on my header template using this code:

<?php wp_login_form($args); ?>

When I pass proper credentials, it redirect me to homapage and all seems to be fine, but when I put wrong login or pass, it redirect me to the folowing url:


So the question is how I can output errors on the same page , and prevent redirection to the
? I try to find solution but didnt have any results. Thanks!

Answer Source

Add this to your functions.php :

add_action( 'wp_login_failed', 'my_front_end_login_fail' );  // hook failed login

    function my_front_end_login_fail( $username ) {
       $referrer = $_SERVER['HTTP_REFERER'];  // where did the post submission come from?
       // if there's a valid referrer, and it's not the default log-in screen
       if ( !empty($referrer) && !strstr($referrer,'wp-login') && !strstr($referrer,'wp-admin') ) {
          wp_redirect( $referrer . '?login=failed' );  // let's append some information (login=failed) to the URL for the theme to use

This code redirects to the same page as the user tries to log in from. Change $referrer for another page.

Hope it will works for you.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download