Codeworks Notes

 2019-08-19

 2020-02-10

Wordpress
バックエンド

ログインエラー時のリダイレクト処理

WordPress ログインでエラーを吐いた時に強制リダイレクトさせる先を指定します。
これは会員制サイトにおけるオリジナルログイン画面の戻り先を wp-login.php にさせず、デザインが統一された戻り先を指定するための配慮になります。

記述方法

functions.php に以下のコードを記載します。

//ログインエラー時のリダイレクト処理
add_action( 'wp_login_failed', 'my_login_failed' );

function my_login_failed( $username ) {
	$referrer = $_SERVER['HTTP_REFERER'];
	$redirect = '/login/?login=failed';
	if ( !empty($referrer) && !strstr($referrer,'wp-login') && !strstr($referrer,'wp-admin') ) {
		wp_redirect( $redirect );
		exit;
	}
}