web-dev-qa-db-ja.com

初回ログイン後にユーザーをリダイレクトする

初めてログインしたユーザーをページにリダイレクトしたいのですが。私はまたユーザーが登録された後のリダイレクト(最初の48時間後のリダイレクト)のようないくつかの解決策に気づきました、しかし問題はすべてのユーザーが既に登録されているということです。

誰もがこれを行う方法を知っていますか?

ありがとうございます。

1
Eddy

以下のコードを使用して要件を達成してください。

//hook when user registers
add_action( 'user_register', 'myplugin_registration_save', 10, 1 );

function myplugin_registration_save( $user_id ) {

    // insert meta that user not logged in first time
    update_user_meta($user_id, 'prefix_first_login', '1');

}

// hook when user logs in
add_action('wp_login', 'your_function', 10, 2);

function your_function($user_login, $user) {

    $user_id = $user->ID;
    // getting prev. saved meta
    $first_login = get_user_meta($user_id, 'prefix_first_login', true);
    // if first time login
    if( $first_login == '1' ) {
        // update meta after first login
        update_user_meta($user_id, 'prefix_first_login', '0');
        // redirect to given URL
        wp_redirect( 'http://www.example.com/' );
        exit;
    }
}
6
WisdmLabs