wp_theme_has_theme_json()


WordPressのwp_theme_has_theme_json()関数は、現在のテーマがtheme.jsonファイルを持っているかどうかを確認するために使用されます。このファイルは、テーマの設定やスタイルを管理するための重要なファイルです。

構文

wp_theme_has_theme_json();
  • wp_theme_has_theme_json()は引数を取りません。

例1: テーマがtheme.jsonを持っているか確認する

この例では、現在のテーマがtheme.jsonファイルを持っているかどうかを確認します。

if ( wp_theme_has_theme_json() ) { echo 'テーマはtheme.jsonを持っています。'; } else { echo 'テーマはtheme.jsonを持っていません。'; }

例2: theme.jsonの存在に基づいてスタイルを変更する

theme.jsonの存在に基づいて、スタイルを動的に変更します。

if ( wp_theme_has_theme_json() ) { wp_enqueue_style( 'custom-style', get_template_directory_uri() . '/custom-style.css' ); }

例3: テーマの設定を条件付きでロードする

theme.jsonが存在する場合にのみ、特定のテーマ設定をロードします。

if ( wp_theme_has_theme_json() ) { add_action( 'wp_enqueue_scripts', 'load_theme_settings' ); }

例4: テーマのサポート機能を確認する

theme.jsonが存在する場合、テーマが特定の機能をサポートしているかどうかを確認します。

if ( wp_theme_has_theme_json() && current_theme_supports( 'editor-color-palette' ) ) { echo 'テーマはカラーパレットをサポートしています。'; }

例5: テーマのカスタマイズを制御する

theme.jsonが存在する場合、カスタマイザーのオプションを制限します。

if ( wp_theme_has_theme_json() ) { add_filter( 'customize_loaded_components', 'limit_customizer_options' ); }

例6: テーマのデフォルトスタイルを上書きする

theme.jsonが存在する場合、デフォルトのスタイルを上書きします。

if ( wp_theme_has_theme_json() ) { add_filter( 'theme_mods', 'override_default_styles' ); }

例7: テーマの設定をエクスポートする

theme.jsonが存在する場合、テーマの設定をエクスポートします。

if ( wp_theme_has_theme_json() ) { export_theme_settings(); }

注意点

  • wp_theme_has_theme_json()は、テーマがtheme.jsonファイルを持っているかどうかを確認するだけで、ファイルの内容を検証しません。
  • この関数は、WordPress 5.8以降で利用可能です。

関連機能: