最低限の記述で子テーマを作成する方法
子テーマとは
ワードプレスのテーマはセキュリティの強化や機能追加などで(テーマによるけど)時々アップデートがかかる。その時にテーマを書き換えたりしているとアップデートされたファイルに自分がカスタマイズしたページが上書きされてしまう。
そのため、カスタマイズする部分を別のところに書いておいて、アップデートによる上書きを防ごうというのが子テーマを作成する目的です。
名前通り子テーマと親テーマは親子の関係があり、子テーマに記述がない部分は親テーマの設定が反映されるようになっている。例えば、固定ページのテンプレートのみ変更したい場合はpage.phpのみ用意すれば良く、残りのアーカイブ、投稿などの諸々は親テーマの物が適用される。
子テーマの作成方法
子テーマ用のフォルダを作る
FTPソフトでサーバーへ接続しワードプレスのフォルダ内のwp-content→themeへ移動。themeフォルダ内はインストール済みのテーマがフォルダごとに配置されているので、ここに作成したい子テーマのフォルダを作る。(フォルダ名はなんでもよい)
functions.phpを作る
<?php add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles()
{ wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
} ?>
style.cssを作る
/* CSS Document */
/*
Template:親テーマフォルダの名前
Theme Name:子テーマフォルダの名前
*/
作成した2つのファイルを子テーマのフォルダへアップロードする
FTPソフトなどで先ほど作った子テーマフォルダにアップロードする。ワードプレスのダッシュボードへ移動し、外観メニューから子テーマが追加されているか確認しよう。(なんかダメだったりファイルがなかったりするとエラーメッセージが表示されるので、メッセージにそって修正すればOK)
追記
子テーマのstyle.cssが読み込まれない場合functions.phpを書き換えをしてみると解決するかもしれない
<?php
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri() . '/style.css',
array('parent-style'),
filemtime( get_theme_file_path( 'style.css' ) )
);
}
参考にさせていただいたサイト
https://jyo-to.okinawa/20170523/1157/