WordPressのプラグイン「bbPress」を使って会員限定の掲示板を作成する自分用メモ。
前提
- ログイン用アカウントは1つとし、参加者全員がそのアカウントを利用する。
- 上記のメンバーアカウントを知る人のみが閲覧・投稿可能。
使用するプラグイン
bbPress
bbPressをインストール・有効化しておく。
設定画面
ver2.5.14のbbPressは日本語化されているので(わーい!)日本語化するためのmoなどのファイルをインストールする必要はないようです。
「編集を無効にするまでの期限」、「投稿スロットル時間」、「匿名での投稿」あたりは会員専用掲示板なのでデフォルト設定を利用する。
お気に入りなどは1つのアカウントを使いまわすのでいらないかな~とかいろいろ設定していく。
各種スラッグ名もカスタマイズできるのうれしい。
フォーラムの作成
ダッシュボードのメニューの中にbbPressの項目が増えているので「フォーラム」をクリックして「フォーラムを新規作成」をクリックする。
以下ざっくりメモ。
「種類」・・・フォーラム(誰でも自由にトピック立てができる)、カテゴリ(管理人のみトピック立てができる)が選べる
「ステータス」・・・ユーザーが追加でトピックやコメント投稿ができるかどうか。(管理人はオープンでもクローズでも投稿できる)
「可視性」・・・トピックごとに閲覧制限するかどうかを設定できるらしい。使いこなせれば便利だな。
「親」・・・親子関係を作る場合は設定
「順序」・・・表示順
できたら公開する。
トピックの作成
作成したフォーラム内から新しいトピックを立てる事ができる(WPの管理画面内からもできる)
トピックから返信ができる。
ログインアカウントをもっていないユーザー
設定で「匿名での投稿」のチェックをはずしてあるので、公開になっているトピックのみ閲覧可能(トピックの作成、トピックに対する返信はできない)
フォーラムルートのスラッグの設定、固定ページの準備
トピックごとに公開が設定できるのは便利だけど今回はもうベースが会員限定なので、固定ページの閲覧を制限してしまえばいいかなと思う。
フォーラムルートはWordPress 固定ページと連携し、柔軟性を高めるためにショートコードを使えます。
とあるので、固定ページを作成し、ショートコードを貼り付け、ページのステータスを非公開にする。
フォーラムを表示する場合は
[bbp-forum-index]
その他利用にあたっての微調整
「今後の返信をメールで通知」というのはアカウント使い回しで全然役割を果たさないのでCSSやjQueryなどを用いて非表示にしておく。
投稿者名を入力するところも当然ないので、タイトルや本文内に誰が作成したかがわかるように記述するなどのローカルルールを設ける。
http://example.com/forumでアクセスしたときにログインユーザー以外がうっかり掲示板が見えてしまわないように投稿者アーカイブにアクセスさせないを参考に、「ログインしていないユーザー(!is_user_logged_in())がforumを含むページにアクセスしたときは別のページ(404とか指定したページ)に飛ばす、を追加した。
管理者が毎回フォーラムを非公開にするかな…とかいろいろ考えるとフォーラム全体を非公開にするかどうかとかの機能もほしいところ。
設定後は必ずパーマリングを更新すること。全然反映されなくて困ってたけどここが原因だった。