У меня есть страница входа в систему, код которой выглядит следующим образом
<div>
<?php
wp_login_form(array(
'label_username' => 'E-Mail',
'label_log_in' => 'Sign in',
'value_remember' => true
)); ?>
</div>
При неудачных попытках входа она ранее перенаправлялась на вход в wordpress. Я предотвратил это, добавив следующий код в файл 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 . '' ); // let's append some information (login=failed) to the URL for the theme to use
exit;
}
}
Теперь он не перенаправляет на вход в wordpress, а перенаправляет на мою страницу. Как я могу отображать сообщения об ошибках без перенаправления, когда пользователь вводит недопустимые учетные данные?