bbPress:フォーラムTOP(フォーラム一覧ページ)のタイトルを変更する
Tag: bbPress
最近仕事でフォーラムサイトを作りたい、というものがあり、そこで有名なプラグインのbbPressを使用しました。
bbPress – WordPress プラグイン | WordPress.org 日本語このプラグインは色んな箇所にフィルターやアクションを設定しているのでプラグインファイルを触らずとも結構カスタマイズできます。
手始めにおそらく殆どの人がやりたいであろう「フォーラム」という名前の変更をやってみます。
今後、ちょこちょこbbPressのカスタマイズ記事も書いていこうかなーって思ってます。
フォーラム一覧ページの名前を変更する
このページはデフォルトでは「フォーラム」となっており、管理画面から変更することは出来ない仕様になってます。
なのですが、この部分を変更するフィルター「bbp_get_forum_archive_title」が用意されているのでそれを使用します。
テストで名前を「デモフォーラム」に変更してみます。
function change_forum_archive_title() { $title = 'デモフォーラム'; return $title; } add_filter('bbp_get_forum_archive_title', 'change_forum_archive_title');
フィルターを通す前
フィルターを通した後
問題なく変更してます。
bbPressで用意されているパンくずにもちゃんと反映されてました。
title部分の名前を変更する
サイト上は上記のフィルターでOKなんですが、title部分は「フォーラム」という名前が出力されてるんですよね。
ここは変わらないみたい。
なのでここはwordpressで用意されているフィルター「document_title_parts」を使って変更してやります。
function change_document_title_parts( $title ) { if( is_post_type_archive( 'forum' ) ) { $title['title'] = bbp_get_forum_archive_title(); } return $title; } add_filter( 'document_title_parts', 'change_document_title_parts' );
フォーラムTOPはフォーラム一覧ページなので「is_post_type_archive()」でフォーラム一覧ページのみ名前を変更します。
「bbp_get_forum_archive_title()」はフォーラム一覧ページの名前を取得する関数です。
上で設定したフィルターはこの関数実行時に通るんですね。
なのでフィルター「bbp_get_forum_archive_title」で変更した内容が適応されて出力されます。
フィルター適応後
ちゃんと変わってますね。
これで元々の名前「フォーラム」がすべて「デモフォーラム」に変わったと思います。
フィルターを色々用意しておいてくれるとありがたいですね。
まぁこの部分くらいは管理画面から変更できるようにしといてほしかったという思いも無いわけではないですが…