渡米生活。(日記)

渡米生活。本家から切り離しました。あまり渡米生活に関係のないプログラムネタや音楽ネタなど。

子テーマで親テーマのstyle.cssが読み込まれない

久々にWordpressで子テーマを作ったら、style.cssを置くだけでは親テーマのCSSファイルが読み込まれず、文字だけのページになってしまい、暫くハマりました。

以前は、

@charset "utf-8";
/*
 Theme Name:   Academy
 Description:  Twenty Fourteen Child Theme
 Template:     twentyfourteen
 Version:      1.0.0
*/

@import url(“../twentyfourteen/style.css”);

なんてstyle.cssに書くだけで、親テーマとそっくり同じ子テーマ(Academy)の出来上がりだったのですが、最新のWPでは@importは使うな、という仕様になっている模様。

http://codex.wordpress.org/Child_Themes

日本語コーデックスはまだ古い記述なので、ハマった人もいるかも。

正しくは、子テーマ側にfunctions.phpを作り、以下の行を書き込め、ということです。

<?php

add_action( 'wp_enqueue_scripts', 'enqueue_parent_theme_style' );
function enqueue_parent_theme_style() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' );
}


(他にも関数があればここに書く)

?>

というわけで、親テーマとそっくり同じ子テーマを作るには、最低2つのファイルがいる模様です。
勿論、親テーマのstyle.cssの内容をそっくりそのまま子テーマのstyle.cssにコピーしてしまえば、インポートする必要はないですが。