WordPressの子テーマはどんなときに使う?使用すべき時と作成方法

WordPressサイトのデザインや機能を定めているのがテーマです。テーマを切り替えることでデザインを一新させたり、機能を変更したりできます。
このテーマには「親テーマ」と「子テーマ」に分けることができます。今回は子テーマについてのメモです。

子テーマは必要?どんな時に使うか

子テーマを使う時は、使用しているテーマのファイルに編集が必要になった時です。特に配布されているテーマのコードを編集する場合は必須でしょう。

子テーマは何かしらのテーマ(親となるテーマ)をカスタマイズしたテーマとして使用します。すでにあるテーマのデザインや機能を継承して、一部変更・追加したい内容を子テーマで設定していきます。

子テーマを使用することで、元々のテーマの仕様をそのまま残しつつ、サイト上で変更したものを表示させることができます。

編集は管理画面の追加CSSのみ、themesフォルダにあるファイルの変更は一切行わないという場合は子テーマは必要ありません。ただ少しでもテーマファイルを編集する必要がある場合は子テーマを用意しておくと、メンテナンス性や保守性がよくカスタマイズもしやすいです。

テーマのカスタマイズをするなら子テーマを使用

子テーマを作らずとも、元々あるテーマを直接編集してカスタマイズを行うこともできます。

ただテーマをよく理解せずに編集してしまうと思わぬところでエラーが発生してしまうことも少なくありません。
基盤となる部分に変更を加えると影響範囲が広くなりカスタマイズの難易度が上がります。編集する範囲も多くなってしまうかもしれません。
複雑なカスタマイズを行い、時間が経ってうまく表示されないところがあると、どこを編集したか分からなくなり何が悪いのか原因究明に時間をかける羽目になってしまう可能性も大いにあります。

子テーマでカスタマイズしておけば、変更した内容が分かりやすいので対処しやすいです。うまくいかない場合は親テーマに戻せばいいだけなので、エラーがあるまま公開される状態を防げます。

メンテナンス性や保守性を考えるなら子テーマは必須と言えます。

テーマがアップデートされるとカスタマイズしたものは上書きされる

配布されているテーマはアップデートされることがあります。もしそのテーマファイルを直接編集していた場合、アップデートの際にカスタマイズした内容が上書きされて削除されてしまいます。

更新のたびにバックアップをとって、アップデートされたテーマにカスタム内容を復元するのは手間ですし、カスタマイズが多くなるほど全て復元するのが難しくなると思います。

子テーマを使用している場合はカスタマイズした内容はそのまま残ります。そのため、そのテーマの元となる親テーマとそれに独自のカスタマイズの内容を付け足したものを子テーマとして分けておいた方が運用しやすいです。

テーマを更新しなければいい?

テーマの更新をしなければ上書きはされませんが、テーマがアップデートされた場合は更新した方が良いです。また更新のないテーマを使用するのもあまりおすすめできません。

WordPressが定期的にアップデートされるため、テーマもアップデートする必要が出てきます。
デザインの変更や機能の追加といったことの他、バグの修正やセキュリティに関するアップデートもあります。これらに対応するためにテーマもアップデートする必要があったり、またテーマ自体のバグ修正やセキュリティ強化されることもあります。

古いバージョンのテーマのままにしておくとセキュリティが脆弱になってしまったり、WordPressのバージョンとの互換性がなくなってしまう可能性があるため、長期間同じテーマを使用するなら更新はしておきたいところです。

オリジナルテーマでテストしたい場合にも便利

オリジナルテーマを使用している場合、テーマを更新しても変更したデータが失われるということはありません。そのため子テーマを使用するメリットはそこまでないように思います。

それでもデザインを変えたり、機能を追加・変更したりして問題ないかどうかテストする場合、子テーマで問題ないことを確認して親テーマに移行させるといったことも方法の一つとしてあげられます。

テスト用テーマを作ったり別バージョンのテーマを作成するのが通常かもしれません。
バージョンアップ版として作成する場合は子テーマを作成する必要はありませんが、上書きする場合は子テーマで分けておけば、どのファイルを変更しているか分かりやすいので移行しやすく、問題があった場合に対処しやすいのがメリットです。

ただやはり直接編集するよりか子テーマを作成するという手間はかかるので、変更する内容に応じて使い分けたり、自分がやりやい方を選んでみてください。

子テーマが配布されているかどうかを選定基準の一つにするのもあり

子テーマを自作するのはハードルが高いがカスタマイズはできるようにしておきたいという方は、この基本となるテーマを選ぶときに「子テーマも用意されている」ことを基準の一つにしてもいいと思います。

配布されているテーマには子テーマが用意されているものも多いです。利用するテーマに子テーマが含まれているか、またダウンロードできるかなど確認してみてください。

子テーマ用のファイルが用意されていれば、それをアップロードして子テーマを有効化すればOK。あとは子テーマの中でカスタマイズしていくだけです。

子テーマを自作

テーマによっては子テーマが用意されていないこともあります。WordPressのデフォルトテーマ(Twenty -twenty-threeなど)もその一つです。

この場合自分で子テーマに必須のファイルを作る必要があります。またこの作業はそんなに大変ではないので、専用の子テーマファイルがなかなか見つからない場合、自分で作ってしまったほうが早いかもしれません。

まず子テーマ用のフォルダを作成します。フォルダ名の決まりはありませんが、「テーマ名-child」といった名前にしておくとわかりやすいです。

style.css ファイル作成

子テーマフォルダの中に style.css ファイルを作成し、以下のようなコードを記述します。

/*
Theme Name: Twenty Twenty-Three Child
Template: twentytwentythree
*/

「Theme Name」に子テーマの名称を、「Template」に親テーマのフォルダ名を記述します。

子テーマの名称はなんでもOK。わかりやすい名前にしましょう。

親テーマのテーマ名ではなく「フォルダ名」を記載してください。
フォルダ名が違っていると壊れているテーマとして表示されます。この場合親テーマのフォルダ名になっているか確認しましょう。

functions.php ファイル作成

次に 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');
    wp_enqueue_style('child-style', get_stylesheet_directory_uri() . '/style.css', array('parent-style'));
  }
?>

テーマによってはこの書き方ではうまく表示されないこともあるようです。記述が正しいのに表示が崩れてしまう、子テーマのスタイルが当たっていないという場合は、使用しているテーマのサイトなどでこの他に必要なコードがないか調べてみてください。

子テーマフォルダをアップロード

子テーマをアップロードして「外観 > テーマ」に子テーマが表示されていればOK。子テーマを有効化して親テーマが継承されサイト表示が問題ないか確認しましょう。

子テーマ自体を表示させるために必要なのは style.css と functions.php ですが、その他に編集したいファイルがあれば、親テーマからファイルをコピペして編集していきます。

子テーマは単独では機能しないので、親テーマも削除せずそのまま残しておいてください。

プラグインで子テーマを作成

プラグインを利用して子テーマを作ることもできます。より簡単に子テーマを作りたいという方は試してみてください。

親テーマのアップデートの内容確認は必要

子テーマを適用していて、親テーマの機能やデザインが大幅に変更された場合、注意が必要です。

今まで使用していたCSSのクラスが変わったり、とある機能を大幅に修正するといった、子テーマとの互換性が失われてしまう修正もありえます。

テーマのアップデートの際にはどういった内容が修正がされたのか、それは子テーマでカスタマイズをしていないか、影響を受けないかといった確認はしておきましょう。

もし親テーマをアップデートした際にうまくいかないところがあれば、アップデート内容をチェックしてみてください。

カテゴリー : WordPress

TOPへ