ログイン判定とリダイレクトのメモ

      2014/09/18

カスタム投稿の記事は特定の人のみ表示、っていうことがやりたかったので、ログインしているユーザーかどうかで判定し、そうでなければトップに飛ばす、っていう対応にしようかなと思っていろいろ探したという覚書。

ログインしているユーザーのみに表示

ログインしているかどうかをチェックするにはis_user_logged_in()を使うそうです。

if ( is_user_logged_in() ) {
	//ログインしているとき何かする
} else {
	//ログインしてなければ何かする
};

投稿タイプの条件分岐

投稿タイプの条件分岐はこちらを確認した。

  if( '投稿タイプ名' == get_post_type() ){
  }

リダイレクト

<meta http-equiv="refresh" content="0;url=<?php echo home_url(); ?>">

ホームに飛ばしたい。

本当はリダイレクトは

header("HTTP/1.1 301 Moved Permanently");
header( "location: " . home_url() );
exit();

でやろうと思ったらWarning: Cannot modify header information – headers already sent byなんたら~~~っていうエラーが出たのでおとなしくjavascriptに頼ることにしました。
このエラーの解消法はこちら

以上をまとめて
・ログインしているかチェック
・ログインしていなければこの投稿タイプは見れないよ
・だからホームに(自動的に)とばすね
って書きました。
このページはログインしないと見れないよ!っていうページか投稿をつくってそちらに飛ばすほうが親切かもしれません。

0

 - WordPress