1. TOP
  2. >カスタマイズ・小技>
  3. 子テーマを作ってWordPressの既存テーマをカスタマイズしてみよう

子テーマを作ってWordPressの既存テーマをカスタマイズしてみよう

カスタマイズ・小技, 技術メモ, WordPress

2020/10/11
2022/07/21
子テーマを作ってWordPressの既存テーマをカスタマイズしてみよう

この記事は【2022年7月21日】が最後の更新のため、記事の内容が古い可能性があります。

WordPressを既存のテーマを使用して運営していくうちに、デザインを変えたくなったり、プラグインでは対応できないなどで、使用しているテーマを編集したくなることもあるかと思います。ただ、このやり方だとテーマのアップデートの際に上書きされ、編集した部分が元に戻ってしまいます。そこで、子テーマを作成しておくとアップデート後も、編集した内容を残し反映させることができます。

 

アップデート前の赤色のファイルは修正した部分。
アップデート後は、修正された部分が上書きされてしまう場合があります。

 

アップデート前



アップデート後



 

子テーマを作成しておくと、テーマのアップデートがあった場合でも、

 

親テーマ =>
子テーマ =>

 

親テーマが更新されるだけで、子テーマはそのままの状態です。
なので、デザインや機能を追加した際の内容を引き継ぐことができます。

 

子テーマの必要性

既存のテーマをアップデートしなければ編集しても大丈夫ではありますが、テーマのアップデートをしないと、様々な不具合が起こる可能性があります。WordPressはセキュリティ関連の修正や、新しい機能の追加など、頻繁にアップデートを繰り返しています。WordPressのアップデートに合わせて、テーマやプラグインの修正も必要になる場合があります。そのままにしておくと動作の不具合や表示されないなどトラブルを起こす可能性もあるので、既存のテーマのアップデートは大事です。

 

・既存のテーマを直接変更した場合、そのテーマがアップデートされると変更された内容が失われるかもしれません。子テーマを使用すればテーマの変更は確実に保持されます。
・子テーマを使用することで開発時間を短縮。
・子テーマの使用することで、広告を入れたり全体のデザインを変えたり自由にできます。
・子テーマの使用することでWordPressのテーマの開発を学ぶことが可能。

子テーマを作成するのに必要なもの

 

子テーマはシンプルな構成で作成することができます。

子テーマ用のフォルダ
twentyfifteenの子テーマを作りたい場合は、twentyfifteen-childなど判別し易い名前が良いです。
style.css
functions.php

この3点を用意してください。

 

style.cssを作成

 

子テーマ用につくったフォルダ内にstyle.cssを作成し、以下を参考に記述してください。

 

/*
 Theme Name:   Twenty Fifteen Child
 Theme URI:    http://example.com/twenty-fifteen-child/
 Description:  Twenty Fifteen Child Theme
 Author:       John Doe
 Author URI:   http://example.com
 Template:     twentyfifteen
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  twenty-fifteen-child
*/

Theme Nameを子テーマか判別できるように、Childなどを追加してください。
Templateは、親テーマの名前を記述してください。

 

例の場合だと

 

子テーマ名
Twenty Fifteen Child

親テーマ名
twentyfifteen

 

functions.phpを作成

子テーマ用につくったフォルダ内にfunction.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')
);
}
?>

 

 

用意が出来たら、テーマを格納しているフォルダにアップしてください。

外観→テーマに例で作成したTwenty Fifteen Childがあります。これを有効化してください。

 

あとは親テーマから修正したいファイル(single.phpなど)をコピーして子テーマに入れて編集してください。
子テーマにあるファイルが優先的に読み込まれます。

こんな感じで簡単に出来るので、既存のテーマでデザインの修正や広告を追加したい時には、子テーマを用意して対応してください。

 

- PR -

ニッチなテーマのイラスト素材投稿始めました。良かったら使ってください。
RU DESIGN/無料イラスト・フリー素材「イラストAC」

オリジナル絵本 Kindleにて出版
ナマケモノのふにゃまるちゃん

ドメイン取得は同じところで取得しておくと便利ですよ。
お名前.comは1円から購入(1年間)できるドメインがあるので、いろいろと便利で経済的です。
ホームページ制作ならRU DESIGN

関連記事

ワードプレス各バージョンと使用可能なPHPバージョン一覧
2024/01/29
 WordPressのバージョンによって使用可能なPHPのバージョンは異なってきます。PHPのバージョンによっては、ワードプレスが正常に動作しなかったり、テンプ...
古いMacに「ChromeOS 」をインストールして利用
2023/10/08
 Googleが提供しているChrome OS(クローム・オーエス)は、Linuxをベースとしたオペレーティングシステム(OS)の1つ。その中でPCやMACでも...
公式サポートが終了した古いMacに最新のmacOSをインストールするプロジェクト
2023/10/07
 古いMacに最新のmacOSをインストールするプロジェクト「OpenCore Legacy Patcher」(OCLP)は、Appleが提供する最新のmacO...
【WordPress】古い投稿を現在の日付で再投稿してくれるプラグイン「Republish Old Posts」
2023/08/31
注意:パーマリンクに日付が含まれている場合は、このプラグインを使用しないでください。SEOプラグイン「All in One SEO」との相性もよくないそうです。...
Crayon Syntax Highlighterの代替プラグイン「Enlighter」
2023/06/05
 ソースコードをきれいに表示させるのに役立っていた「Crayon Syntax Highlighter」ですが、更新も止まったままの状態で再開の目処はなさそうで...