概要
is_child_theme
関数は、現在のテーマが子テーマであるかどうかを調べるための関数です。この関数は、テーマの階層構造を利用して、カスタマイズの際に親テーマと子テーマのどちらが使用されているかを確認するのに役立ちます。例えば、子テーマ専用のスタイルやスクリプトを適切に読み込むかどうかを判断する際に用いられます。
この関数は以下のような機能を実装する際によく使われます。
1. 子テーマ用のスタイルの条件付き読み込み
2. 子テーマ専用のスクリプトの読み込み
3. 子テーマの設定に応じた機能の調整
4. 子テーマが有効かどうかに基づくカスタマイズの適用
5. 親テーマとの互換性を保つための条件分岐
6. 子テーマの特定の機能の有効化・無効化
7. テーマのデバッグ情報の表示
8. テーマのオプションの設定
構文
is_child_theme();
パラメータ
この関数にはパラメータはありません。
戻り値
true
:現在のテーマが子テーマである場合false
:現在のテーマが子テーマでない場合
関連する関数
使用可能なバージョン
is_child_theme
関数はWordPress 3.0以降で使用可能です。
コアファイルのパス
is_child_theme
関数は、wp-includes/theme.php
ファイルに含まれています。
サンプルコード
サンプルコード 1
if (is_child_theme()) {
// 子テーマ専用のスタイルを読み込む
wp_enqueue_style('child-theme-style', get_stylesheet_directory_uri() . '/style.css');
}
このサンプルコードでは、現在のテーマが子テーマである場合に子テーマのスタイルシートを読み込みます。
サンプルコード 2
if (is_child_theme()) {
// 子テーマでのみ使用するスクリプト
wp_enqueue_script('child-theme-script', get_stylesheet_directory_uri() . '/js/child-script.js', array(), '1.0.0', true);
}
このサンプルコードでは、子テーマが有効な場合にのみ特定のJavaScriptファイルを読み込みます。
サンプルコード 3
if (is_child_theme()) {
// 子テーマの設定を適用
add_filter('some_filter', 'child_theme_function'); // 子テーマ用のフィルタを追加
}
このサンプルコードでは、子テーマがアクティブな場合に特定のフィルタを有効にします。
サンプルコード 4
if (is_child_theme()) {
// 子テーマのデバッグ用メッセージを表示
add_action('wp_footer', function() {
echo '<p>現在のテーマは子テーマです。</p>';
});
}
このサンプルコードでは、子テーマが有効な場合にフッターにメッセージを表示します。
サンプルコード 5
if (!is_child_theme()) {
// 親テーマ専用のコードを処理
// 親テーマのスタイルを読み込む
wp_enqueue_style('parent-theme-style', get_template_directory_uri() . '/style.css');
}
このサンプルコードでは、現在のテーマが子テーマでない場合に親テーマのスタイルを読み込みます。
この関数のアクションでの使用可能性
アクション名 | 使用可能 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | 〇 |
after_setup_theme | 〇 |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | 〇 |
get_header | |
wp_head | 〇 |
この関数が特定のWordPressバージョンで非推奨または削除されたという情報はありません。