web-dev-qa-db-ja.com

登録フォームのあるページから登録した後にカスタムURLにリダイレクトする

このフォームはページテンプレートにあります

<form action="<?php echo site_url('wp-login.php?action=register', 'login_post') ?>" method="post">
    <div class="formrow requiredRow"><label id="FullName-ariaLabel" for="txt_FullName">Full Name</label>
    <input class="required" id="txt_FullName" title="Full Name. This is a required field" type="text" name="first_name" /></div>

    <div class="formrow requiredRow"><label id="FullName-ariaLabel" for="txt_FullName">Email</label>
    <input class="required" id="user_email" title="Full Name. This is a required field" type="text" name="user_email" /></div>          

    <div class="formrow requiredRow"><label id="Password-ariaLabel" for="pwd_Password">Password</label>
    <input class="required" id="pwd_Password" title="Password. This is a required field" type="password" name="user_pass" /></div>

    <div class="row">
    <input class="" id="user_login" type="hidden" name="user_login"/>
    <?php do_action('register_form'); ?>
    <input type="submit" value="Submit form" /></div>

</form>

以下の質問からこのフィルタを試してみたので、カスタムページにリダイレクトする必要があります。カスタムページから登録した後、/my-pageにリダイレクトされていませんが、Registration complete. Please check your e-mail.というメッセージと共に http://www.example.com/wp-login.php?checkemail=registered にリダイレクトされています。

function __my_registration_redirect(){
    return home_url( '/my-page' );
}
add_filter( 'registration_redirect', '__my_registration_redirect' );

https://wordpress.stackexchange.com/a/19698/10413

カスタムテンプレートを含むページから登録が投稿されているときにカスタムURLにリダイレクトする方法を教えてください。

2
Anagio

Home_url、header(location)を使用する代わりに、 wp_redirect() を使用できます。

function __my_registration_redirect(){
    wp_redirect( '/my-page' );
    exit;
}
add_filter( 'registration_redirect', '__my_registration_redirect' );

これは役に立つかもしれません

2
TBI Infotech

Login/logout/register actions Peterのログインリダイレクト の後にリダイレクトを管理するためにプラグインを使うことができます。