はじめに
WordPressを初めて使用する場合、なぜ子テーマを作成する必要があるのか疑問に思うかもしれません。子テーマを作成する理由はいくつかありますが、最も重要な理由は、テーマファイルに直接変更を加えた場合、テーマがアップデートされるとその変更が失われてしまうためです。
子テーマの作成はそれほど難しくありません。必要な作業は、テーマのフォルダー内に子テーマディレクトリを作成し、そこにstyle.cssとfunctions.phpファイルを追加して、言語設定ファイルを追加することだけです。このチュートリアルでは、例としてGenesisテーマ用の多言語対応の子テーマを作成する方法を詳しく説明します。他のテーマ用の子テーマを作成する場合も、同じ手順に従うことができます。
手順
- wp-content/themes内に配置する子テーマディレクトリを作成します。以下の点に注意してください。
- 子テーマディレクトリの名前には、末尾に「-child」を追加することをお勧めします。
- エラーの原因となる可能性があるため、子テーマディレクトリの名前にスペースを入れないでください。以下の図を参照してください。
- 子テーマ用のスタイルシート(style.cssファイル)を作成します。このファイルは、作成した子テーマフォルダー内に配置します。スタイルシートは、子テーマ名、子テーマのURL、Description、Templateなどの情報を含むスタイルシートヘッダーで開始する必要があります。
Genesisテーマの場合、デザインが時々変更されるため、Genesis Frameworkからstyle.cssファイルをインポートすることはお勧めしません。代わりに、アカウントまたはhttps://github.com/copyblogger/genesis-sampleから入手できるGenesis Sample子テーマをダウンロードできます。
見た目はGenesisとまったく同じですが、親スタイルシートが含まれているため、インポートせずに使用できます。他のテーマの場合は、指定された手順に従って子テーマにスタイルシートを追加できます。以下の例を参照してください。
/* Theme Name: Genesis Child Description: Child Theme for Genesis Author: XYZ Template: genesis Text Domain: genesis */
例のテキストを、お使いのテーマに関連する詳細に置き換えます。ここで言及すべき点がいくつかあります。
- Templateの行は、親テーマのディレクトリ名に対応します。
- テーマに属するすべてのテキストを示すために使用される、テーマのテキストドメインを追加することをお勧めします。
- 次に、親テーマからスタイルを継承します。これを行うには、子テーマディレクトリ内にfunctions.phpファイルを作成し、以下のコードをコピーして貼り付けます。
<?php
function custom_enqueue_child_theme_style() {
wp_enqueue_style( 'parent-theme-css', get_template_directory_uri() . '/style.css' );
}
add_action( 'wp_enqueue_scripts', 'custom_enqueue_child_theme_style' );
- この時点で、WordPressのダッシュボード >> 外観 >> テーマに移動して子テーマを有効化できます。
- 子テーマに言語設定ファイルを追加します。サンプルの言語設定ファイルはこちらからダウンロードでき、子テーマディレクトリに配置します。言語設定ファイルは、テーマ内で翻訳する必要があるものを示すために使用されます。言語設定ファイルについてお読みください。両方のファイルを保持するとエラーが発生するため、親テーマの言語設定ファイルを削除し、子テーマの言語設定ファイルを保持する必要があることに注意してください。これで、子テーマディレクトリは次のようになります。
まとめ
子テーマを使用すると、親テーマを変更せずにテーマに変更を加えることができます。これにより、コードが整理され、テーマのアップデートによって変更が上書きされるのを防ぐことができます。このチュートリアルの手順に従うことで、わずか数分で子テーマを作成できます。


