web-dev-qa-db-ja.com

カスタマイザ設定の配列を取得する

私はカスタマイザAPIを使って私のテーマにカスタムオプションを追加しています。例えば:

$wp_customize->add_setting( 'header_textcolor' , array(
    'default'   => '#000000'
) );

$wp_customize->add_setting( 'footer_textcolor' , array(
    'default'   => '#333333'
) );

カスタマイザからすべてのカスタム設定の配列を返すことは可能ですか?

1
CyberJ

はい。あなたは$wp_customize->settings()を通してすべての登録された設定の配列を得ることができます。それらすべてを表示したい場合は、次のようにします。

if ( is_customize_preview() ) {
    global $wp_customize;
    $theme_mods = array();
    foreach ( $wp_customize->settings() as $setting ) {
        if ( 'theme_mod' === $setting->type ) {
            $theme_mods[ $setting->id ] = $setting->value();
        }
    }
    echo '<pre>' . json_encode( $theme_mods, JSON_PRETTY_PRINT ) . '</pre>';
}
0
Weston Ruter

これを試して:

$all_settings = get_theme_mods();
print_r( $all_settings );
0
Misha Rudrastyh