SyntaxHighlighter

2013年6月15日土曜日

【WordPress】TCDで子テーマを作る

忘れたころに必要になりそうなので、とりあえずメモっとく。


親テーマ:dynamic
子テーマ:dynamic_child

1)子テーマのディレクトリを作成する
親テーマと同じ階層に子テーマ用のディレクトリを作成する
wordpress/wp-content/themes/dynamic_child

2)子テーマのスタイルシートを作成する

wordpress/wp-content/themes/dynamic_child/style.css

【style.cssの内容】
--------------------------------------------------
@charset "utf-8";
/*
Theme Name:Dynamic Child
Description:Dynamicの子テーマ
Template:dynamic
Version:1
*/
@import url('../dynamic/style.css');
--------------------------------------------------
【説明】
@charset "utf-8";       ←日本語でメモを表示したいので追加(無くても良い)
Theme Name:Dynamic Child ←子テーマ名(必須)
Template:dynamic       ←親テーマのディレクトリ(必須)
@import url('../dynamic/style.css'); ←親テーマのスタイルシートをインポート(※1)

※1:スタイルシートを1から作る場合は不要だが、一部のみ変更したいから
  親テーマのスタイルを継承する

3)親テーマの改修

functions.php内のget_stylesheet_directory()メソッドを検索して「TEMPLATEPATH」に変更する

※get_stylesheet_directory()のままだと、プログラムが読み込むディレクトリが子テーマのディレクトリになるため、何もないフォルダを参照して起動時に画面が真っ白になる

4)管理画面のテーマオプションのフォーマットを適用する
これは色々方法がある…

案1)子テーマに親テーマの「admin/my_admin.css」を持ってくる
   →子テーマでテーマオプションのスタイルもカスタマイズも出来る

案2)親テーマのfunctions.php内で自身のディレクトリを参照させるように改造
   get_bloginfo('stylesheet_directory')をget_bloginfo('template_directory')に変更する

案3)子テーマでfunctions.phpを継承し、 my_admin_CSS()を作成して読み込ませるディレクトリを親テーマに変更する。


以上で子テーマが作成可能。かなり便利ではないでしょうか。





0 件のコメント:

コメントを投稿