カスタマイズに失敗してファイルめちゃめちゃになって映らなくなっちゃった!
あらあら……カスタマイズするなら「子テーマ」を使わないと
子テーマとは?
テーマをカスタマイズするにはファイルの内容を書き換えます。
親テーマ(素のテーマ)をそのまま書き換えると、ミスがあった場合に取り返しがつかなくなります。
それを防ぐため用いるのが子テーマです。
子テーマは、SimplicityでもStingerでもLightningでも使えます。
子テーマの長所1 ~「やり直し」を容易にする
親テーマに子テーマを入れて、子テーマをカスタマイズするとします。
すると親テーマはそのまま。
子テーマに書いた設定内容が反映されます。
言い換えると、テーマのカスタマイズで親テーマを修正する必要がなくなります。
仮に何かのミスで動かなくなっても、親テーマは素のままです。
慌てず子テーマを外せば(あるいは書き換えた記述を削除すれば)、親テーマの設定で動きます。
それゆえ原因の切り分けも対処も容易になります。
極端な例えをするなら、親テーマが人間、子テーマが化粧です
ここに類稀なブスのA子さんがいるとします。
美しく生まれ変わるなら整形手術をするという手があるでしょう。
しかし失敗したら取り返しがつきませんよね?
それよりも化粧でキレイになる方が合理的だと思いませんか?
失敗すれば化粧を落とせばすむのですから。
ここまで読んで「よくわからない」という方
理屈はわからなくてもいいから、とにかく「子テーマ」を使って
SimplicityとLightningは公式サイトから子テーマがダウンロードできます。
カスタマイズ前に入れて下さい。
子テーマの長所2 ~テーマの更新を容易にする
子テーマを「入れなくてはならない」理由がもう一つあります。
それは、
親テーマのアップデートが来ても、気軽に更新できることです
親テーマだけしか入れていない場合、どうして更新できないのか?
それは「アップデート=ファイルを丸々書き換える」から。
親テーマを直接カスタマイズしていた場合、その記述は全てパア。
一から書き直しになります。
しかし子テーマを入れていれば、書き換えた内容は子テーマ側にあります。
場合によっては微調整する必要がありますが、大抵は親テーマをまるっと入れ替えることができます。
子テーマの記述が優先されない例外 ~functions.php
嘘つき! 子テーマのfunctions.php書き換えても動かないじゃん!
言っておくけど、書いてる内容は絶対に合ってるんだからねっ!
他人のせいにするのは初心者の特権。
しかし、ちゃんと理由があります。
functions.phpだけは「上書」の例外なの
子テーマの記述は「追記」になっちゃうの
「上書」と「追記」、何が違うのでしょう?
「追記」だと親テーマの記述も生きてしまいます。
なので親テーマの設定と子テーマの設定が競合して動かなくなる場合があります。
ただfunctions.phpいじる場合は、元々「設定を付け加える」場合が多いです。
あまり神経質になる必要もないかと。
もし干渉したら、その場合は親テーマを直接いじって、場所をメモしておきましょう。
アップデートきても、再び修正できるように。
子テーマの欠点
子テーマにも欠点はあります。
でも無視して構いません。
そういうレベルの話なので、以下はあくまで参考としてお読み下さい。
欠点はムダな読み込みをする羽目になるということ。
結果、サイトの速度が落ちます。
親テーマも子テーマも読むので。
しかし影響は微々たるもの、気にしなくていいです。
デメリットよりメリットの方が遙かに大きいので。
結論
今回の記事の内容は理解できなくてもいいから、とにかく子テーマを使って
大事なことだから何度も繰り返すね