サポート » 使い方全般 » 会員ページでログイン失敗時wordpressログイン画面になる

  • 固定ページに独自のログインフォームを作成し、Peter’s Login Redirectというプラグインで、購読者のみログイン後のURLをその固定ページにしています。
    ログイン失敗した時にwordpressのログイン画面になってしまうのですが、固定ページの独自のログインフォームのままにする方法が分かりませんでした。

    固定ページはテンプレートでこのような内容を記述しています。
    <?php if (is_user_logged_in()) : ?>
    (コンテンツの内容)
    <?php else : ?>
    <form method=”post” action=”<?php echo wp_login_url() ?>?redirect_to=<?php echo esc_attr($_SERVER[‘REQUEST_URI’]) ?>”>
    <dl>
    <dt>ユーザー名:</dt><dd><input type=”text” name=”log” id=”login_username” value=”” /></dd>
    <dt>パスワード:</dt><dd><input type=”password” name=”pwd” id=”login_password” value=”” /></dd>
    </dl>
    <input type=”submit” class=”cbtn” value=”ログイン” />

    </form>
    <?php endif; ?>

    ご存知の方がいらっしゃいましたら、ご教示いただければ幸いです。
    どうぞよろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • こんな感じではどうでしょうか?

    function my_authenticate( $user, $username, $password ) {
    	if ( empty( $username ) || empty( $password ) ) {
    		do_action( 'wp_login_failed', $user );
    	}
    	return $user;
    }
    add_filter( 'authenticate', 'my_authenticate', 10, 3 );
    
    function my_login_failed( $username ) {
    	if ( ! isset( $username ) || is_wp_error( $username ) ) {
    		if ( isset( $_REQUEST['redirect_to'] ) ) {
    			wp_redirect( $_REQUEST['redirect_to'] );
    			exit;
    		}
    	}
    }
    add_action( 'wp_login_failed', 'my_login_failed' );

    ※ このフォーラムでコードを貼り付ける場合は、コードを選択し [code] ボタンをクリック(逆クォートで囲む)してください。
    https://wpdocs.osdn.jp/フォーラムへようこそ#.E3.82.B3.E3.83.BC.E3.83.89.E3.81.AE.E6.8A.95.E7.A8.BF

    トピック投稿者 manmaru216

    (@manmaru216)

    ご回答大変ありがとうございます。
    お陰様で改善できました。
    function.phpも編集できるようにしていきたいです。
    ありがとうございます。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「会員ページでログイン失敗時wordpressログイン画面になる」には新たに返信することはできません。