This post is also available in: 日本語 (Japanese)
wordpressを使っていて、ログインしている状態かどうかの判定は is_admin で判断できますが、ログイン画面(wp-login.php もしくは wp-register.php)を表示している状態かどうかを判定するコードは少し工夫する必要があります。
1.テーマファイルの function.php に下記のコードを加える。
以下のサンプルコードが、wordpressのログイン画面(wp-login.php もしくは wp-register.php)を表示している状態どうか判定する関数になります。
ログイン画面に wp-login.php だけでなく wp-register.php も含めるかどうかで、適宜サンプルコードを修正してください。
// check if current page is login-page or not function is_login_page() { return in_array($GLOBALS['pagenow'], array('wp-login.php', 'wp-register.php')); }
2.判定した結果により何かを行うコードを function.php に書く
wordpressのログイン画面(wp-login.php もしくは wp-register.php)を表示している状態をトリガーとして、何かしらの処理を行いたい場合には、以下のサンプルコードのようにアクションフックを用いることができます。
if ( !is_login_page() ) { // wp-login.php もしくは wp-register.php の画面でなかったら... add_action('somewhere','something'); }
参考:
http://stackoverflow.com/questions/5266945/wordpress-how-detect-if-current-page-is-the-login-page