ログイン後のリダイレクト

情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。

投稿に関しての問い合わせはログインユーザーのみで、問い合わせページに遷移時、ログインしていない場合はログインページにリダイレクト・ログイン後は問い合わせページにリダイレクトしたいのだが、リファラーを取得するコードを書くと何故かエラーが出る。*自分のテスト環境(エックスサーバー)で同じコードを書いても出ないのだが

問い合わせはMW Form を利用していて、リンクURLには投稿IDが付いているので、

function redirectpage() {
     global $wp_query;
    if ( is_page('inquiry') && !empty($_GET['post_id']) && !is_user_logged_in() ) { $pid = $_GET['post_id'];
               wp_redirect( home_url('login.html?post_id='.$pid), 301 );
               exit;
     }
}
add_action( 'wp', 'redirectpage' );

として、ログインページにリダイレクト時に投稿IDを付けて送り、
ログインページ用のテーマで、ログイン後は、その投稿IDを付けて問い合わせページへリダイレクト、とした。

if (is_page('login') && is_user_logged_in() && !empty($_GET['post_id'])) { $ref = $_GET['post_id']; wp_safe_redirect('inquiry.html?post_id='.$ref); }