子テーマ作成のポイント〜WordPress

Tips

WordPressのテーマ作成の手順がわかったら、既存のテーマを親要素として、さらにオリジナル部分は子テーマで作成すると効率的です。子テーマは親テーマと簡単な関連付けをする必要があります。

スポンサーリンク

子テーマで最低限必要な決まりごと

子テーマで最低必要なものは「style.css」と「functions.php」です。
以下手順です。

  1. wp-content/themeディレクトリの中に子テーマのファイルを入れる専用のディレクトリを作成します。ディレクトリ名は子テーマが連想できるような名前にしておきます。また、子テーマディレクトリの名前には最後に ‘-child’ を付けることが推奨されます。ここでは仮に親テーマのディレクトリ名をchoco-cakeとして子テーマのディレクトリ名をchoco-cake-childとします。
    *子テーマディレクトリの名前には空白を含めるとエラーが発生しますので注意してください。
  2. 子テーマディレクトリの中にstyle.cssを作成します。
  3. style.cssに次の記述をします。
    /*
    Theme Name:Choco-Cake-Child
    Themplate:choco-cake
    */
    
  4. 親テーマのcssをインポートします。その方法はfunctions.phpにアクションフックを記述します。
    以前よく使われていた@importを使ってインポートする方法はよくないとされていますので注意してください。

    子テーマの初期functions.phpの例

    <?php
    add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
    function theme_enqueue_styles() {
        wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
    }
    

ポイントは子テーマのstyle.cssの中に記述するTheme Name:Choco-Cake-ChildとThemplate:choco-cakeです。
Theme Name:は子要素のテーマ名です。
また、Themplate:は親要素のディレクトリ名です。親要素のテーマ名ではありませんので間違わないようにしましょう。
親テーマのスタイルを引き継ぐにはfunctions.phpの wp_enqueue_script()を使います。「子テーマの初期functions.phpの例」をそのままコピペで使用すればOKです。

WordPressは子テーマのテンプレートファイルを優先して採用しますが、子テーマにないテンプレートは親要素のものが使用されます。
また、functions.phpは子要素、親要素それぞれのファイルを適用させます。

子テーマのディレクトリのファイルをインクルードする注意点

子テーマのディレクトリ構造内に存在するファイルをインクルードする場合、get_stylesheet_directory() を使用します。get_template_directory()をした場合は、親テーマのディレクトリを参照してしまいます注意してください。

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