「functions.php」タグアーカイブ

WordPressで子テーマから親テーマ呼び出しに使ってた@importが非推奨になってた

 先日からWordPressのカスタマイズに着手し始めたのだが、度重なる子供からのインタラプト要求に対応しながらとなり、中断が重なって、あまり思うようには進められていない。もうすぐ子供とお別れ状態に入るため、子供との時間は大事にしたいので、毎回面倒と思う場合でも対応しているのだが……。

 というわけで、まずはざっと基本をおさらいしつつ、以前直した部分が反映されていない件の調査を始めることにした。

 結果からいうと、子テーマを選択し直したら一発で治った。以前、挙動がおかしくなった時に、テーマを選択し直したことがあって、その時に不用意に親テーマである「Twenty Fourteen」の方を選択して、そのままにしてしまったことが原因。多分こういうしょうもないことだと思ってたが、やっぱりしょうもなかった。子テーマのことは頭に入っていたが、普段更新作業だけで手一杯で、少しずつでも触り続けないと忘れてしまうな。

 改めて子テーマについて調べてみたところ、Codexの子テーマ欄に以下のような記述があった。

以前は @import: を使用して親テーマのスタイルシートをインポートしていましたが、これはもはや良い方法ではありませんので注意してください。親テーマのスタイルシートをキューに入れる正しい方法は、子テーマの functions.php で wp_enqueue_script()を使用する方法です。したがって子テーマには functions.php を作成する必要があります。

 importが定番のやり方っぽかったので、私も使ってたが、「もはや良い方法ではない」なんてことになってるとは知らんかった。というわけで、さっそく公式が勧めるやり方に変更。やり方もまんま公式に書いてあるので、その通りやったら出来た。

 しかし、「もはや良い方法ではない」とか、かなりなno longerの直訳調だな、と思って英語版見てみたら、やっぱり “using @import: this is no longer best practice” とあった。私は直訳調、個人的には好きですけどね。日本語に面白い表現をもたらしてくれるんで。

(WordPressカスタマイズ話つづく)