カテゴリーにパスワードを付けたい

カテゴリー1・2・3・4・5とA・B・C・D・E があり、投稿はそれぞれ1つずつのカテゴリーが選択される。Aは一般に公開されるがB・C・D・E はパスワードを要求する。パスワードは1・2・3・4・5 でそれぞれ異なる。

カテゴリー1・2・3・4・5 を表示する固定ページを5ページ作成し、カスタムフィールドで主たるカテゴリーを設定し、それぞれパスワードを設定。
5ページの入口となるページからのリンク、各ページ内のA・B・C・D・E へのリンクにはカテゴリースラッグのパラメータを付けて、カスタムフィールドのカテゴリーとパラメータのカテゴリーで絞り込む。
Aのときは普通に表示、B・C・D・E のときはパスワードを要求後に表示。

パスワードをクリアしたときは1・2・3・4・5 の年月アーカイブリストを表示。アーカイブリストのリンクにはパスワードをクリアしている意味のパラメータを付ける。
カテゴリー別のアーカイブはカテゴリー用テンプレートで表示するので、カテゴリーテンプレートで年月とカテゴリーを取得してパラメータを付けて元の固定ページに戻す。

<?php if ($_GET['pass'] == 'clear') { $cate = $_GET['cat']; $year = get_query_var('year'); $month = get_query_var('monthnum'); $id = url_to_postid(wp_get_referer()); $ref = get_permalink($id); wp_redirect ($ref.'?cate='.$cate.'&year='.$year.'&month='.$month); exit; } else { wp_redirect( home_url('/login.html')); exit; } ?>

パスワードクリアのパラメータがないときは入り口ページに戻す。
固定ページでパラメータに年月を含むときは年月の絞り込みを追加。

固定ページでカテゴリーや年月のパラメータがない時も入り口ページに戻す。

このエントリーをはてなブックマークに追加
« »