web-dev-qa-db-ja.com

ログイン/登録後にユーザーをグローバルにリダイレクト

特定のページにログインした後、管理者も含めてすべてのユーザーをリダイレクトする方法はありますか。また、登録成功後にユーザーをリダイレクトしますか?最も簡単な方法は?たとえば、ログイン後に自分のWebサイトの[更新]ページにユーザーをリダイレクトします。そして登録後、ウェブサイトの「ホーム」ページへ。

1
John Doe

このコードは、 Registration Redirect から適合しています。

add_filter( 'registration_redirect', 'ckc_registration_redirect' );
function ckc_registration_redirect() {
    return home_url();
}

このコードは、 ログインリダイレクト から変更されました。

add_filter( 'login_redirect', 'ckc_login_redirect' );
function ckc_login_redirect() {
    // Change this to the url to Updates page.
    return home_url( '/Updates' );
}

Functions.phpテーマ(または子テーマ)ファイルにコードを追加してください。

2

ログアウト用のリストにもう1つ追加するには:

add_action('wp_logout','go_home');
function go_home(){
  wp_redirect( home_url() );
  exit();
}
1
ssaltman

プラグイン付き:

楽しい!

0
Mayeenul Islam

ログイン成功後にグローバルにリダイレクトするには、このコードをwp-login.phpセクションの<form name="loginform">で見つけます。

<input type="hidden" name="redirect_to" value="<?php echo esc_attr($redirect_to); ?>" />

そして<?php echo esc_attr($redirect_to); ?>をあなたがリダイレクトしたいURLに置き換えてください。 URLはhttp://で始まり、/またはその他の賢いページのデフォルトの場所へのリダイレクトで終わる必要があります。

同じファイルに登録後は<form name="registerform">セクションの下に同じフォームリダイレクトをしてください。


編集する

この方法ではWordPressのコアコードを変更します。それはまじめなWordPressプログラマーにはお勧めできません。 自分の責任で進めてください。

0
John Doe