bellbigのブログ!

日記はいつも三日坊主!ブログは三年坊主になりたい!

WordPressで会員専用ページを作る

2014-10-29 22:21:49 | パソコン講座

WordPressで手軽に会員の閲覧領域を作るにはどうしたら良いのだろうか?

会員専用のページがカスタム投稿の一覧表示する固定ページの場合、まずはカスタム投稿タイプ、'member' の投稿だけ一覧表示する為の、固定ページ用のテンプレートファイルを作ります。ファイルの名前は何でもいいんですけど、とりあえず member.php としました。

固定ページ用のテンプレートファイルなので、Template Name を指定するのを忘れずに!

member.php

<?php
/*
Template Name: member
*/
?>

この下はブログ用のテンプレートをもとに編集しました。
'post_type' => 'post'を'post_type' => 'member'に変えることが一番大事!

すると固定ページのテンプレートでmember を選択できるようになりました!


次に認証のさせ方。
auth_redirect()を使う
実はauth_redirect()を使うと、“ログインしていないユーザーは強制的にログイン画面へ遷移させる”ということができる。これは会員のみ閲覧させたいページの最上部に記述することで実現できる。会員専用のテンプレートファイルに以下のコードを記述する。

<?php if (is_user_logged_in()){
}else {auth_redirect();
}; ?>



必ず最上部で読み込むようにすること。

さて、これでログインしていない場合はWordPressの管理画面のTOPに遷移するようになるけど、このままだともろWordPressのロゴなので、ロゴを変更してあげるとより良いかも。
function.phpに記入

<?php
function login_logo() {
echo '<style type="text/css">
#login h1 a {
background: url('.get_bloginfo('template_directory').'/img/logo-3d-3-s.png) no-repeat;
width: 320px;
height: 43px;
}
</style>';
}
add_action('login_head', 'login_logo');
?>


参考サイト