WordPressで特定のカテゴリーにだけパスワード制限を設けたい(その2)

WordPressには標準で、記事のパスワードロック機能が付いていますが、記事単位ではなくて、カテゴリー単位で制御したい時の、特定のカテゴリーにパスワード制限を設ける方法の続きです。

前回の記事はこちら

《その2》WordPress内にフォルダを作成して、物理的にそのフォルダに制限を掛けてしまうという方法

前回でも書きましたが、そもそもWordPressのカテゴリーには、フォルダが存在しません。 カテゴリーというグループがまるであるかのように、URLをシミュレートしているだけです。
ですから、今回は、フォルダを作成して、物理的にそのフォルダに制限を掛けてしまうという方法をご紹介します。

手順は4つしかありません、比較的手軽に設定できる方法です。

手順1- 管理画面でカテゴリーを作成

まず、WordPressの管理画面で、パスワードロックするカテゴリーを作ります、作成したらそのカテゴリースラッグをメモしておいてください。

WordPressのインストールフォルダにカテゴリースラッグと同名のフォルダを作成

FTPでサーバーにアクセスしてください。WordPressをインストールしたフォルダに、先程作成したフォルダのカテゴリースラッグと同じ名前で、フォルダを作成します。今回は『usersonly』という名前のフォルダを作成しました。

フォルダを作成したら、インストールフォルダの中にある .htaccess と index.php をコピーして『usersonly』の中に入れてください。

手順2- index.phpを編集

index.phpを編集します。一番最後の行の、『require( dirname( __FILE__ ) . ‘/wp-blog-header.php’ );』を環境に合わせて編集してください。

手順3- .htaccessを編集

.htaccessに、Basic認証を追記します。このとき、作ったフォルダまでのサーバーのパスを記載しますが、パスがわからないときは、こちらの記事を参考に、パスを取得してください。

フルパスがわからない時の調べ方

まず、以下を書いて保存してください。

手順4- .htpasswdを作成します

.htpasswd はWEB上に作成ツールがたくさん公開されていますので、そういった便利なサイトを活用してください。パスワードのエンコードを行うことで、簡単には読み取れないようになります。

作成した『.htpasswd』も『usersonly』の中に入れてください。

完成!チェックしてみましょう!

最初にWordPressの管理画面で作成したカテゴリーの中に、何か記事を書いて投稿しておきます。ステータスは公開にしておいてください。

その記事のURLにアクセスしてみましょう!ユーザ名とパスワードを求められたら成功です!