bp-custom.php WordPressのテーマ作成でお馴染み、 function.phpのBuddyPress版みたいなファイル、それがbp-custom.php!
WordPressのテーマ作成でちょっとした設定などをテーマフォルダのfunction.phpに書くことが多いと思いますが、 このBuddyPress版とも言うべきファイルがbp-custom.php。pluginsフォルダディレクトリの直下に設置します。
今回のユーザーページのカスタマイズ方法については全てこのbp-custom.phpに記入してゆきます。
親メニューを追加する# ここからは実際にbp-custom.phpを編集して、ユーザーページメニューをカスタマイズしてゆきます。 BuddyPressのユーザーページのメニューには、親メニューとサブメニューの2つがあります。 メニューを追加するときはadd_actionを使います。
//ユーザーメニューを追加 add_action( 'bp_setup_nav', 'works_nav'); //ユーザーメニュー追加の独自関数をセット function works_nav() { global $bp; bp_core_new_nav_item( array( 'name' => '実績', 'slug' => 'works', 'position' => 75, 'screen_function' => 'works', 'show_for_displayed_user' => true, 'default_subnav_slug' => 'works', 'item_css_id' => 'works' ) ); }
オプションについては以下の通り。
- name… メニューでの表示名
- slug…スラッグ
- position 追加メニューの表示場所。数値が大きければ右側に、小さければ左側に。一番左に表示したければ数値は0にします
- screen_function… 例の通りだと追加メニューのURLはhttp://hoge.com/members/ユーザーID/works/となります。
- show_for_displayed_user… ユーザーに表示するかしないか、true OR false
- default_subnav_slug… メニューをクリックした時に最初に表示されるサブメニューの指定
- item_css_id… 追加メニューに割り当てられるID名。例だとid=”user-works”と、なる
たったこれだけでメニューが追加されます。