BuddyPressで子テーマを作る方法

日本語でググったところ、意外にもその方法に言及しているサイトが見つからなかったので紹介します。BuddyPressの公式サイトにある『Theme Dev: Building a BuddyPress Child Theme』からの引用+拙訳です。

子テーマを作るディレクトリは『子テーマ – WordPress Codex 日本語版』にあるとおり wp-content/themes 内でOK。でも、Codexどおりの書式ではBuddyPressのデフォルトテーマ(BuddyPress Default)を継承してくれないので、以下のように style.css を定義します(必須の項目だけ記しました)。

1
2
3
4
5
6
7
8
@charset "utf-8";
/*
Theme Name: hoge
Template: bp-default
*/
 
@import url( ../../plugins/buddypress/bp-themes/bp-default/_inc/css/default.css );
@import url( ../../plugins/buddypress/bp-themes/bp-default/_inc/css/adminbar.css );

BuddyPressデフォルトのテーマファイルは wp-content/themes 内ではなく wp-content/plugins/buddypress/bp-themes/bp-default 内にあるので @import のパス(7~8行目)が通常の子テーマとは異なっている、というわけです。

テンプレートをオーバーライド(上書き)したいときは、子テーマディレクトリ内に wp-content/plugins/buddypress/bp-themes/bp-default と同じ構造でテンプレートファイル(*.php)を配置していきます。

たとえばフォーラムのテンプレートをカスタマイズするなら wp-content/themes/hoge/forums というディレクトリを作り、その中に index.php や forums-loop.php を作ればいいということになります。

ではではハッピーなBuddyPressライフを! BuddyPressの日本語ドキュメントはまだまだ発展途上だと思うので、BuddyPressと格闘するみなさんといろいろ情報共有したいですね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください