WordPressでログイン・ログアウト時に特定ページへリダイレクトする方法

WordPressでログイン・ログアウト時に特定ページへリダイレクトする方法

WordPressでログイン・ログアウト時に特定ページへリダイレクトする方法
  • シェアしてね♪
  • このエントリーをはてなブックマークに追加


  • 次世代の暗号通貨投資法!初心者でも!どなたでも年利36.27% ⁉︎
  • このエントリーをはてなブックマークに追加

WordPressにログインすると、管理画面のダッシュボードが最初に表示されますよね。これをダッシュボードではなく、指定したページを開くようにする方法を紹介したいと思います。

また、ログアウト時にログイン画面ではなく、特定のページにアクセスさせる方法も紹介します。

スポンサードリンク

ログイン時に指定したページへリダイレクトする方法

WordPressへログインした時に特定のページを開くには、functions.phpに以下のコードを記述します。

functions.php
function redirect_login_front_page() {
  $url = site_url('', 'http');
  wp_safe_redirect($url);
  exit();
}
add_action('wp_login', 'redirect_login_page');

このように記述すると、ログイン時にサイトのトップページへアクセスするようになります。

「site_url(”, ‘http’);」の部分を「site_url(‘/wp/page1’, ‘http’);」のように変更すると、http://wordpresssite.com/wp/page1にアクセスするようになりますので、この部分を適宜変更してください。

また、管理者だけは通常通りダッシュボードを表示したいという場合は、以下のように記述します。

functions.php
function redirect_login_page() {
  if( !current_user_can('administrator') ){
    $url = site_url('', 'http');
    wp_safe_redirect($url);
    exit();
  }
}
add_action( 'admin_init', 'redirect_login_page' );

このように記述することで、管理者はリダイレクトの処理から除外されます。

ログアウト時にログイン画面以外を表示する方法

ログアウト時は、通常ログイン画面が表示されます。ログアウト時にログイン画面以外を表示させたい場合は、functions.phpに以下のコードを記述します。

functions.php
function redirect_logout_page(){
  $url = site_url('', 'http');
  wp_safe_redirect($url);
  exit();
}
add_action('wp_logout','redirect_logout_page');

このように記述することで、ログアウト時にサイトのトップページが表示されるようになります。

ログインの時と同じように「site_url(”, ‘http’);」の部分を変更すれば指定したページが開くようになります。

あとがき

ログインした時に特定のページを開きたいという要望は結構あるのではないでしょうか。

ログイン・ログアウト時の挙動を変更したい時に、参考にしていただければ幸いです。

この記事が気に入ったら
いいね!してね♪

Twitter で
スポンサードリンク

関連記事

コメントを残す

メールアドレスが公開されることはありません。