情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・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); }