WordPress

WordPressテーマTCDのhead.phpをカスタマイズする(カスタムCSSを不要にする)

更新日:

やっと当サイトテーマのカスタマイズが一段落付きました。
不良と言えるほどではないにしても、気になる点が結構出てきました。

それらをなくすためには、やはり基本的には子テーマで全てを修正したくなります。

問題は「functions」フォルダーの中の「head.php」が子テーマが入力するstyle.cssの後に色々なものを読み込んでいることです。
どうしても最後に子テーマ特有のcssやJavaScriptを読み込みたくなります。

それを実現するためには「head.php」を子テーマに移動することが不可欠です。

スポンサーリンク

子テーマのfunctions.phpの設定

「head.php」の子テーマ化は、以下の手順です。

?子テーマのfunctions.phpで子テーマのhead.phpを定義
?子テーマのfunctions.phpで親テーマのhead.phpの関数を削除
?head.phpの関数名称を変更

親テーマのfunctions.phpによってhead.php(tcd_head関数)がwp_headにフックされています。
そのため、子テーマではこのtcd_head関数のフックを無効にしなければなりません。

子テーマのfunctions.phpに以下のように記述します。

これを実行すると「tcd_head」の二重読み込みでエラーが発生してしまいます。

そこで、子テーマのhead.phpの関数名称を変更します。

head.phpの修正

関数名「tcd_head」を「tad_head2」に変更します。
これによってエラーが発生しなくなります。

あとは、「// END function tcd_head()」の直前でCSSを読み込ませれば、カスタムCSSの機能は必要なくなります。(カスタムCSSはこの位置に記述されます)
また、JavaScriptを読み込んでもいいでしょう。

最後に

テストの段階で親テーマの関数の削除に失敗。
head部分が2回繰り返されたのには驚きました。

先に子テーマの tcd_head2()が実行され、その後、親テーマのtcd_head()が実行されます。

この実行順序も面白いです。

……

以下は実際にhead.phpをカスタマイズした例です。

jQueryプラグイン「Vegas」の動画設定について

モニター全面のスライドショーを実現する際に便利なjQueryプラグインが「Vegas」です。 このプラグインはポピュラー ...

続きを見る

トップページ動画をランダムに表示させる

このホームページのトップに動画を配置することを決めてから、とても苦労することになりました。 動画の圧縮を行ってもなかなか ...

続きを見る

by T.Y.

-WordPress
-

Copyright© Slashd Inc. BLOG , 2019 All Rights Reserved.