ブログをカスタマイズしていると、親テーマの更新で、せっかく入れたカスタマイズが飛んでしまった。。。
というのは良くある話。
ちなみにStingerの場合、上書き事故が起こらないように、ENJIさんの方で、あえてver日付をつけて下さってる様ですね。^^
STINGERのテーマ名はあえてver日付をつけて上書きミスしないようにしてるんだけど子テーマの人には不便だろうなぁ。。
— ENJI (@ENJILOG) 2014, 8月 22
まぁ、そうならないためにも、カスタマイズは子テーマで。という事になる訳ですが、親テーマが更新されたら、結局、子テーマに含めたファイルに変更箇所を反映していく必要が出たりもします。
といった辺りも踏まえての、本題ですが、親テーマに更新が入るのを前提として、どんなものをカスタマイズ前に子テーマにコピーしとくと良いのかについて、触れておきたいと思います。
これはコピーしといて良いんじゃない?
親テーマで変更が入る可能性が低いファイルで、カスタマイズしたくなるものに、以下の3ファイルがあります。
sns.php と sns-top.php
snsボタン用のファイルについては、やはり、
- はてブボタンのデザインを他のボタンと合せる(vertical-balloonに変える)
- PocketやFeedlyボタンを追加する
といったカスタマイズを入れたくなりますよね。
恐らく、親テーマ側に修正が入る可能性も無いと思いますので、これらは子テーマ側にコピーしてからカスタマイズしておくと良いと思います。
はてブボタン修正の参考:はてなブックマークボタンの吹き出しデザインをFacebookやTwitterのものと同じにしよう! | そふぁねブログ
その他の追加の参考:WordPress「Stinger」のSNSボタンにPocketとFeedlyを追加する方法
footer.php
フッター(footer.php)の子テーマへのコピーについては、デザインカスタマイズのためでもありますが、Google Analyticsなどのアクセス解析コードの貼り忘れを防ぐためという意図も。
トップページや記事、カテゴリーページなど、どのページにも表示され、なおかつ親テーマで修正が入る可能性が最も低いのがフッターだと思います。
という訳で、子テーマにコピーしたfooter.phpにアクセス解析コードを貼っておけば、親コードが修正された場合のアクセス解析コードの貼り忘れを防ぐ事ができますよ。
好みが分かれるのは。。。
次の2ファイルについては、好みが分かれる所かもしれません。
header.php
ヘッダー部分は、もしかしたら親テーマ側に修正が入るかもしれません。
が、
過去記事「Stinger5カスタマイズ;子テーマのテンプレート準備しました。時短したい方はどうぞ。^^」にも書いてますが、更新のたびにファビコンとiPhone用アイコンの参照コードを書き変えるのも面倒ですよね。
そういう場合は、子テーマ側に含めておくのも手ではあります。
もちろん、親テーマに修正があったら反映させる前提ですがw
functions.php
※注意! functions.php は、そのままコピーするとバグるので、空のfunctions.phpを作成し、必要な関数を追加していく形になります。
functions.phpを子テーマに用意する点については、更に賛否両論有ると思います。
というのも、子テーマの修正を親テーマにオーバーライド(上書き)するには、ちょっと工夫が必要なので、ぶっちゃけ面倒なんですね。
なので、手っ取り早く親テーマのfunctions.phpを触っちゃえってなりがちですw
が、
せっかく子テーマを作るんなら、やはり、ちゃんと子テーマで制御しても良いのでは?とも思います。
(親テーマのStinger5に修正が入る可能性が高い現時点では特に)
functions.phpで、子テーマ側からカスタマイズする方法については、明日にでも記事に起こしたいと思いますw
ちなみに。。。
このブログでは、
- sns.php
- sns-top.php
- footer.php
の3つはコピーして使っています。
また、functions.phpについては、子テーマフォルダに空のファイルを準備した上で、ウィジェットの追加などをやっています。
ちなみに、header.phpについては、コツコツ、親テーマ側に修正をいれていますw
(Stinger5の適応以降は、案外マジメに子テーマでカスタマイズしてますねwww)
という訳で、以上の5つのファイルの子テーマへのコピーについては、検討してみると良いと思います。