wordpressの機能だけで簡単な会員制サイトを作る

このサイトのやり方でできた。
スグラボ » WordPressに認証をつける。

おわり。

・*:.。. .。.:*・゜゚・*・*:.。. .。.:*・゜゚・*・*:.。. .。.:*・゜゚・*

上のサイトと同じ事をここにも書く。

やりたいこと

  • ログインしないとサイトの中身を見れないようにしたい
// wp-blog-header.php

wp();

これを

// wp-blog-header.php

if(is_user_logged_in()){
    // 特に何もしない
}else{
    auth_redirect();
}
wp();

こうする。
ログインしていない閲覧者はすべてログイン画面に飛ばされる。

注意点

  • 未ログインでトップページに来る→ログイン画面に飛ぶ→認証→トップページに戻る
  • 未ログインで下層ページに来る→ログイン画面に飛ぶ→認証→下層ページに戻る
  • 未ログインで認証画面(/wp-login.php)に来る→ログイン画面に飛ぶ→認証→管理画面に入る

管理画面を見せたくない場合は、権限のないユーザーにしておけばおk

権限のないユーザーが管理画面に来た時

こうなる

f:id:socosocomomo:20120204180614p:plain


権限のないユーザーの作り方
wordpressで権限のないユーザーを作る - ドゥルドゥル

ユーザーをいくつか作ると便利

f:id:socosocomomo:20120204182843p:plain

ログインさせるユーザーを分けておくと、サイト内で表示する内容に変化を付けられる。
ユーザー名は $user_identityで参照できる。

具体的な使い方

if($user_identity == 'otona'){
    echo 'ビール';
}else{
    echo 'ジュース';
}

$user_identity が読めないときは

global $user_identity;

とすればおk