bbPressのフォーラムトップに説明文を付ける

プラグイン

自分のところじゃないんですけどbbPressの設置を頼まれていて。
フォーラムのトップに説明を付けたく。

bbPressのフォーラム画面に説明文を入れたい

フォーラム作成画面の本文に書いたらそれがフォーラムページに説明文として出るのかなと思っていたんですが、これ一覧の説明文に出るだけなんですね。

CocoonのサポートフォーラムはbbPressで作られているそうですが、説明文がちゃんと載っていたので技術的にはできるのだろうと思い調べてみました。

方法1.カスタムフィールドを使って設定する

まずカスタムフィールドを使って設定する方法。

【Wordpress】bbpressのトピック等にカスタムフィールドを追加する方法
wordpressの会員制プラグイン「bbpress」のトピックに「Advanced Custom Fields」を使用してカスタムフィールドを追加し、トピック一覧に表示する方法の紹介です。

良さそうなのですが、最近phpファイルをさわってないのであまりさわりたくない。自分のじゃなくて他人のだし。

方法2.Descriptionをフォーラムページにも出す

phpで設定してDescriptionをフォーラムページにも出す

もう一つヒットしたのがこちら。これは一覧に出てくるDescriptionがフォーラムトップにもでてくるというもの。

Layout and functionality – Examples you can use · bbPress Codex

これもphpだな…むむむ…

同じことができるプラグイン

と思っていたら、プラグインで同じことができるという話を発見した。

Topic: Description under title forum · bbPress.org
Forums, made the WordPress way

プラグインはこちら。

bbp style pack
For bbPress - Lets you style bbPress, and add display features

ありがとうございます。

このプラグイン、設定項目が山ほどあるんですが、その中の『Forum Display』>『Add Forum Description』で無事に出現。

このやり方だとliタグが機能しなかったので、リストを手動で取り除きました。

カテゴリーページの一覧からDescriptionを消す

出現したのはいいんですが、凝ったデザインにしていると今度は一覧に出た時にうっとおしい。
プラグインではそこを消す設定はなさそうだったので、一覧のページ(カテゴリー扱いのやつ)のCSSに.bbp-forum-content {display: none;}を入れて消しました。

 .bbp-forum-content {display: none;}

ちょっと力技な気がするけど、これで相手が求めている形にはなったと思う。

本当はプラグインをいたずらに増やすよりもちゃんとphpで制御したほうがいいとは思うんですが。
今の私だとphpを改変した結果の責任を持つのが難しそうだったので。
ちゃんと精進しなくては…

方法3.ウィジェットを使う

方法2だとliタグが機能しなかったのですが、Cocoonのサポートページではリストタグが機能しているので多分違うやり方なのだろうと思い、ソースを見たら該当箇所にdiv class=”textwidget”とあったのでウィジェットでやっているんだなと。
それで私もウィジェットで試してみました。

最初はフォーラムページを固定ページ扱いだと勘違いして固定ページのエリアに設定していたのだけど何をやっても出なくて、ふと『投稿本文上』などに設定したらちゃんと出た。投稿扱いなのね。

このままだと全ての投稿ページに出てしまうので、『表示設定』で指定。この項目ってCocoonテンプレート以外にもあるんだっけ?

『チェック・入力したページで表示』の『ページ>bbPressページ』でも出るのだけど、規約系がトピックにもいちいち出るのはうるさいので、『カスタム投稿タイプ>フォーラム』に設定。(これはCocoonの寄付特典です。Cocoonを使っている人は普段の感謝を込めてわいひらさんへの寄付をおすすめする)

方法2と3どちらがいいかだけど、

  • 余計なプラグインを入れたくない→方法3
  • リストタグを使いたい→方法3
  • 一覧から簡素な説明を消したくないけど、フォーラムのトップには色々と書きたい→方法3
  • 一律に制御したい→方法3
  • フォーラムごとに記述を変えたい→方法2

という感じかな。

タイトルとURLをコピーしました