PresentNote

【注意】functoins.phpをWordPressの子テーマに追加する場合

以前、子テーマの作成方法についてお伝えしましたが今回はその続きです。
ちなみに、この記事を理解するには、まず WordPress の子テーマについて理解して置く必要があります。子テーマについてはこちらの記事にまとめていますので、「子テーマって何!?」という場合は、まずこちらからチェックしてください。

【重要】WordPressテーマをカスタマイズするなら子テーマを作れ!

子テーマにfunctions.phpを加えたい場合

さて、この子テーマ、カスタマイズしたい部分だけ、カスタマイズしたいファイルだけを上書きすることができる便利な機能なんですが、functions.php に関しては扱いに注意が必要です。
その注意点を一言でまとめるなら・・・

『追加はできるが、上書きはできない』

という感じでしょうか。もうちょっと詳しく説明していきましょう。

テンプレートファイル(header.phpやcontent.phpなど)やスタイルシートを子テーマで作成した場合

通常、子テーマにテンプレートファイルやスタイルシートを作成した場合、該当する部分を上書きすることになります。

例えば、元々のスタイルシートにはブログのタイトルの文字色が黒で指定されていたとします。しかし子テーマのフォルダの中に追加したスタイルシートで、新たにブログタイトルの文字色を赤に指定すると、こちらの設定が反映されます。
つまり、親テーマで指定している要素を改めて指定し直す事ができるので、上書きしていると言えると思います。

functions.php を子テーマで作成した場合

一方で functions.php を子テーマのフォルダの中に作った場合は同じようになりません。親テーマに記述されていることを上書きしてくれないのです。
もし、親テーマに記述してあることを改めて記述してしまうと、エラーが発生して WordPress が表示できなくなってしまいます(恐ろしい・・・)。そのため、functions.php の内容を変更したい場合は、親テーマの方を直接いじる方が無難です。
当然、親テーマのアップデートがあったりなんかすると、変更した内容が失われてしまいますので、注意が必要です。
しかし、親テーマに記載されていない内容を追加したい場合は、子テーマ内に functions.php を作ってカスタマイズすることができます。子テーマフォルダ内に作成した functions.php をカスタマイズする場合は、追加したい内容を以下のように記述していく感じです。

<?php
/* ここに新しく追記 */
?>

functions.php をカスタマイズしたい場合は注意してください。

モバイルバージョンを終了